Il s'agit de la commande cscope qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
cscope - examine interactivement un programme C
SYNOPSIS
cscope [-bCcdehkLlqRTUuVvX] [-Ffichier sym] [-Frefile] [-JEIncdir] [-jefichier de noms]
[-0123456789modèle] [-pn] [-sdir] [fichiers]
DESCRIPTION
cscope est un outil interactif orienté écran qui permet à l'utilisateur de parcourir C
fichiers source pour les éléments de code spécifiés.
Par défaut, cscope examine les fichiers source C (.c et .h), lex (.l) et yacc (.y) dans le
répertoire actuel. cscope peut également être invoqué pour les fichiers source nommés sur la ligne de commande.
Dans tous les cas, cscope recherche dans les répertoires standard les fichiers #include qu'il fait
pas trouvé dans le répertoire courant. cscope utilise une référence croisée de symboles, appelée
cscope.out par défaut, pour localiser les fonctions, les appels de fonction, les macros, les variables et
symboles de préprocesseur dans les fichiers.
cscope construit la référence croisée du symbole la première fois qu'il est utilisé sur les fichiers source pour
le programme en cours de navigation. Lors d'une invocation ultérieure, cscope reconstruit la référence croisée
uniquement si un fichier source a changé ou si la liste des fichiers source est différente. Quand le
la référence croisée est reconstruite, les données des fichiers inchangés sont copiées de l'ancien
référence croisée, ce qui rend la reconstruction plus rapide que la construction initiale.
OPTIONS
Certains arguments de ligne de commande ne peuvent apparaître que comme seul argument dans l'exécution de
cscope. Ils obligent le programme à simplement imprimer une sortie et à se fermer immédiatement :
-h Affichez l'affichage de l'aide en cas d'utilisation prolongée.
-V Imprimez sur la première ligne de l'écran le numéro de version de cscope.
--Aidez-moi Pareil que -h
--version
Pareil que -V
Les options suivantes peuvent apparaître dans n'importe quelle combinaison :
-b Construisez uniquement la référence croisée.
-C Ignorez la casse des lettres lors de la recherche.
-c N'utilisez que des caractères ASCII dans le fichier de références croisées, c'est-à-dire ne compressez pas le
revendre.
-d Ne mettez pas à jour la référence croisée.
-e Supprimer le -e invite de commande entre les fichiers.
-Ffichier sym
Lire les lignes de référence des symboles de fichier sym. (Un fichier de référence de symbole est créé par >
et >>, et peut également être lu à l'aide de la commande <, décrite sous ``Issuing
Demandes ultérieures'', ci-dessous.)
-frefile
Utilisez le refile comme nom de fichier de référence croisée au lieu du "cscope.out" par défaut.
-IIncdir
Regarder dans Incdir (avant de chercher dans $INCDIR, l'emplacement standard des fichiers d'en-tête,
normalement / usr / include) pour tous les fichiers #include dont les noms ne commencent pas par ``/''
et qui ne sont pas spécifiés sur la ligne de commande ou dans fichier de noms au dessous de. (Le #include
Les fichiers peuvent être spécifiés avec des guillemets doubles ou des crochets angulaires.) Le fichier incdir
répertoire est recherché en plus du répertoire courant (qui est recherché
premier) et la liste standard (qui est recherchée en dernier). Si plus d'une occurrence
de -I apparaît, les répertoires sont recherchés dans l'ordre où ils apparaissent sur la commande
ligne.
-ifichier de noms
Parcourez tous les fichiers source dont les noms sont répertoriés dans fichier de noms (noms de fichiers
séparés par des espaces, des tabulations ou des sauts de ligne) au lieu du fichier de liste de noms par défaut,
qui s'appelle cscope.files. Si cette option est spécifiée, cscope ignore tout fichier
noms apparaissant sur la ligne de commande. L'argument namefile peut être défini sur ``-'' pour
accepter une liste de fichiers de l'entrée standard. Noms de fichiers dans le fichier de noms qui
contiennent des espaces doivent être entourés de "guillemets doubles". À l'intérieur de ces cités
les noms de fichiers, les guillemets et les barres obliques inverses doivent être échappés par
des barres obliques inverses.
-k ``Mode noyau'', désactive l'utilisation du répertoire d'inclusion par défaut (généralement
/ usr / include) lors de la construction de la base de données, puisque les arborescences des sources du noyau font généralement
pas l'utiliser.
-L Effectuez une seule recherche avec une sortie orientée ligne lorsqu'elle est utilisée avec le modèle -num
option.
-l Interface orientée ligne (voir ``Interface orientée ligne'' ci-dessous).
-[0-9]modèle
Aller au champ de saisie num (en comptant à partir de 0) et trouvez motif.
-Pchemin Préfixer chemin aux noms de fichiers relatifs dans un fichier de références croisées prédéfini afin que vous
pas besoin de changer pour le répertoire où le fichier de références croisées a été créé. Cette
L'option n'est valide qu'avec l'option -d.
-pn Afficher le dernier n composants de chemin de fichier au lieu de la valeur par défaut (1). Utilisation 0 pas d'
afficher le nom du fichier du tout.
-q Activez la recherche rapide de symboles via un index inversé. Cette option fait en sorte que cscope
créer 2 fichiers supplémentaires (noms par défaut ``cscope.in.out'' et ``cscope.po.out'') dans
en plus de la base de données normale. Cela permet un algorithme de recherche de symboles plus rapide qui
fournit des performances de recherche sensiblement plus rapides pour les grands projets.
-R Recursez les sous-répertoires lors de la recherche de fichiers source.
-sdir Regarder dans dir pour des fichiers sources supplémentaires. Cette option est ignorée si les fichiers source sont
donné sur la ligne de commande.
-T Utilisez uniquement les huit premiers caractères pour faire correspondre les symboles C. Un habitué
expression contenant des caractères spéciaux autres qu'un point (.) ne correspondra à aucun
symbole si sa longueur minimale est supérieure à huit caractères.
-U Vérifiez les horodatages des fichiers. Cette option mettra à jour l'horodatage sur la base de données même
si aucun fichier n'a changé.
-u Construisez inconditionnellement le fichier de références croisées (supposez que tous les fichiers ont
modifié).
-v Soyez plus verbeux en mode orienté ligne. Mises à jour de la progression de la sortie pendant la base de données
construction et recherches.
-X Supprimer le fichier de référence cscope et les index inversés en quittant
fichiers Une liste de noms de fichiers sur lesquels opérer.
Les options -I, -c, -k, -p, -q et -T peuvent également se trouver dans le fichier cscope.files.
Demander le initiale recherche
Une fois la référence croisée prête, cscope affichera ce menu :
Trouvez ceci. C symbole:
Trouvez ceci. fonction définition:
Trouvez fonctions appelé by ceci. fonction:
Trouvez fonctions appel ceci. fonction:
Trouvez ceci. texte chaîne:
Changer ceci. texte chaîne:
Trouvez ceci. égrep modèle:
Trouvez ceci. fichier:
Trouvez fichiers #comprenant ceci. fichier:
Trouvez missions à ceci. symbole:
appuie sur le ou touches à plusieurs reprises pour accéder au champ de saisie souhaité, saisissez le texte
rechercher, puis appuyez sur le clé.
Emission ultérieur demandes
Si la recherche est réussie, n'importe laquelle de ces commandes à caractère unique peut être utilisée :
0-9a-zA-Z
Modifiez le fichier référencé par le numéro de ligne donné.
Afficher le prochain ensemble de lignes correspondantes.
Alterner entre le menu et la liste des lignes correspondantes
Passer à l'élément de menu précédent (si le curseur se trouve dans le menu) ou passer à la
ligne correspondante précédente (si le curseur se trouve dans la liste des lignes correspondantes.)
Passer à l'élément de menu suivant (si le curseur est dans le menu) ou passer au suivant
ligne correspondante (si le curseur se trouve dans la liste des lignes correspondantes.)
+ Afficher le prochain ensemble de lignes correspondantes.
- Afficher l'ensemble précédent de lignes correspondantes.
^e Modifiez les fichiers affichés dans l'ordre.
> Écrire la liste de lignes affichée dans un fichier.
>> Ajouter la liste de lignes affichée à un fichier.
< Lire les lignes d'un fichier au format de référence de symbole (créé par > ou >>),
tout comme l'option -F.
^ Filtrez toutes les lignes via une commande shell et affichez les lignes résultantes, en remplaçant
les lignes qui étaient déjà là.
| Dirigez toutes les lignes vers une commande shell et affichez-les sans les modifier.
A tout moment, ces commandes à caractère unique peuvent également être utilisées :
Passer au champ de saisie suivant.
^n Passer au champ de saisie suivant.
^p Passer au champ de saisie précédent.
^y Recherche avec le dernier texte tapé.
^b Passer au champ de saisie et au modèle de recherche précédents.
^f Passer au champ de saisie et au modèle de recherche suivants.
^c Basculez sur ignorer/utiliser la casse lors de la recherche. (Lorsque vous ignorez la casse, recherchez
pour ``FILE'' correspondra à ``File'' et ``file''.)
^r Reconstruisez la référence croisée.
! Démarrez un shell interactif (tapez ^d pour revenir à cscope).
^l Redessiner l'écran.
? Donne des informations d'aide sur les commandes cscope.
^d Quittez cscope.
NOTE: If le premier caractère of le texte à be cherché pour allumettes UN of le au dessus de
commandes, échapper it by dactylographie a (barre oblique inverse) d'abord.
En substituant nouvelle texte pour et les sites anciens texte
Une fois le texte à modifier saisi, cscope demandera le nouveau texte, puis
il affichera les lignes contenant l'ancien texte. Sélectionnez les lignes à modifier avec
ces commandes à un caractère :
0-9a-zA-Z
Marquez ou décochez la ligne à modifier.
* Marquez ou décochez toutes les lignes affichées à modifier.
Afficher la prochaine série de lignes.
+ Afficher la prochaine série de lignes.
- Afficher l'ensemble de lignes précédent.
a Marquez ou décochez toutes les lignes à modifier.
^d Changez les lignes marquées et sortez.
Sortez sans changer les lignes marquées.
! Démarrez un shell interactif (tapez ^d pour revenir à cscope).
^l Redessiner l'écran.
? Donne des informations d'aide sur les commandes cscope.
Spécial clés
Si votre terminal a des touches fléchées qui fonctionnent dans vi, vous pouvez les utiliser pour vous déplacer
les champs de saisie. La touche flèche haut est utile pour passer au champ de saisie précédent
au lieu d'utiliser le clé à plusieurs reprises. Si tu as , , ou
touches, elles agiront respectivement comme les commandes ^l, + et -.
Orienté ligne interface
L'option -l vous permet d'utiliser cscope là où une interface orientée écran ne serait pas utile,
par exemple, à partir d'un autre programme orienté écran.
cscope demandera avec >> quand il est prêt pour une ligne d'entrée commençant par le champ
nombre (en comptant à partir de 0) immédiatement suivi du motif de recherche, par exemple,
``lmain'' trouve la définition de la fonction principale.
Si vous voulez juste une seule recherche, au lieu de l'option -l, utilisez les motifs -L et -num
options, et vous n'obtiendrez pas l'invite >>.
Pour -l, cscope renvoie le nombre de lignes de référence cscope : 2 lignes
Pour chaque référence trouvée, cscope génère une ligne composée du nom du fichier, de la fonction
nom, numéro de ligne et texte de ligne, séparés par des espaces, par exemple, main.c main 161
principal(argc, argv)
A noter que l'éditeur n'est pas appelé pour afficher une seule référence, contrairement à l'écran-
interface orientée.
Vous pouvez utiliser la commande c pour basculer sur ignorer/utiliser la casse lors de la recherche. (En ignorant
casse des lettres, la recherche de ``FILE'' correspondra à ``File'' et ``file''.)
Vous pouvez utiliser la commande r pour reconstruire la base de données.
cscope se ferme lorsqu'il détecte la fin du fichier ou lorsque le premier caractère d'une ligne d'entrée
est ``^d'' ou ``q''.
ENVIRONNEMENT VARIABLES
CSCOPE_EDITOR
Remplace les variables EDITOR et VIEWER. Utilisez ceci si vous souhaitez utiliser un autre
éditeur avec cscope que celui spécifié par vos variables EDITOR/VIEWER.
CSCOPE_LINEFLAG
Format du drapeau de numéro de ligne pour votre éditeur. Par défaut, cscope appelle votre
éditeur via l'équivalent de ``editor +N fichier'', où ``N'' est le numéro de ligne
auquel l'éditeur doit sauter. Ce format est utilisé à la fois par emacs et vi. Si votre
l'éditeur a besoin de quelque chose de différent, spécifiez-le dans cette variable, avec ``%s'' comme
espace réservé pour le numéro de ligne. Ex : si votre éditeur doit être invoqué en tant que
``editor -#103 file'' pour aller à la ligne 103, définissez cette variable sur ``-#%s''.
CSCOPE_LINEFLAG_AFTER_FILE
Définissez cette variable sur ``yes'' si votre éditeur doit être invoqué avec la ligne
option numéro après le nom de fichier à éditer. Pour continuer l'exemple de
CSCOPE_LINEFLAG, ci-dessus : si votre éditeur a besoin de voir ``editor file -#number'', définissez
cette variable d'environnement. Les utilisateurs de la plupart des éditeurs standard (vi, emacs) n'ont pas besoin
pour définir cette variable.
EDITEUR Éditeur préféré, qui est par défaut vi.
ACCUEIL Répertoire personnel, qui est automatiquement défini lors de la connexion.
INCLUS
Liste de répertoires séparés par des deux-points pour rechercher des fichiers #include.
SHELL Shell préféré, qui par défaut est sh.
SOURCES
Liste de répertoires séparés par des deux points pour rechercher des fichiers sources supplémentaires.
TERME Type de terminal, qui doit être un terminal à écran.
TERMININFO
Nom du chemin complet du répertoire d'informations du terminal. Si votre terminal n'est pas dans le
répertoire terminfo standard, voir curses et terminfo pour savoir comment créer le vôtre
descriptif des bornes.
TMPDIR Répertoire de fichiers temporaires, par défaut /var/tmp.
VIEWER Programme d'affichage de fichiers préféré (comme less), qui remplace EDITOR (voir ci-dessus).
VPATH Une liste de répertoires séparés par des deux-points, chacun ayant le même répertoire
structure en dessous. Si VPATH est défini, cscope recherche les fichiers source dans le
répertoires spécifiés ; s'il n'est pas défini, cscope recherche uniquement dans le
répertoire.
Utiliser cscope en ligne à l'aide des services onworks.net