ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: "Alexey I. Froloff" <raorn@immo.ru>
To: ALT Devel discussion list <devel@altlinux.ru>
Subject: Re: [devel] prepared tags in *-devel and similar packages
Date: Mon, 28 Feb 2005 17:37:39 +0300
Message-ID: <20050228143739.GB19400@hell.immo.ru> (raw)
In-Reply-To: <20050228082745.GB7873@sam-solutions.net>

[-- Attachment #1: Type: text/plain, Size: 2731 bytes --]

* Gleb Stiblo <g.stiblo@> [050228 11:38]:
> Кстати, кто из редакторов/IDE и какие типы тэгов поддерживает(emacs vs
> normal):
> 	kdevelop,
> 	anjuta,
> 	vim,
> 	emacs,
> кто больше?
man ctags:

  Vi(1) and its derivatives (e.g. Elvis, Vim,  Vile,  Lemmy),  CRiSP,
  Emacs, FTE (Folding Text Editor), JED, jEdit, Mined, NEdit (Nirvana
  Edit), TSE (The SemWare Editor), UltraEdit, WorkSpace, X2, Zeus

> Это я к тому, что, если делать тэги общесистемными, так надо, что бы их
> пользовали все IDE.
Предлагаю proposal:

Теги разбиваются по языкам програмирования.  Rationale:  В разных
язвках програмирования могут быть функции (переменные, константы)
с одинаковыми именами.  Для vim это реализуется на уровне
ftplugin'ов, я даже такой нарисую.

В пределах одного языка теги из всех пакетов складываются в один
каталог.  Один пакет - один файл тегов на язык:

/usr/share/tags/$language/%name

Поддерживаемые языки, поумлочательные каталоги (опционально -
shell-pattern имени файла), где эти теги ищутся, типы тегов
(ctags --list-kinds):

 + C/C++ (теоретически можно сказать что это один язык)
 /usr/include
 c,d,e,g,m,n,p,s,t,u,x (не используются f,l,v)

 + Lisp
 /usr/share/{emacs,xemacs} (*.el)
 f

 + Perl
 /usr/lib/perl5 (*.p[lmh])
 c,s (не используется s)

 + PHP
 /usr/lib/php/pear (*.php)
 c,d,f,v

 + Python
 /usr/lib/python* (*.py, наверно кроме __init__.py)
 c,f,m

 + Ruby
 /usr/share/ruby (*.rb)
 c,f,F,m

 + Scheme
 /usr/share/guile (*.scm)
 f,s

 + Sh
 /etc (на самом деле нас интересуют только
файлы functions:

find /etc /usr -type f -name functions 
/etc/chroot.d/functions
/etc/sisyphus/functions
/etc/rc.d/init.d/functions
/etc/net/scripts/functions
/etc/control.d/functions
/usr/share/separator/functions
/usr/share/cook/functions -- (этот попал сюда по ошибке ;-)
/usr/share/alternatives/functions
/usr/share/hasher/functions
/usr/lib/rpm/functions

плюс ко всему ctags для этих файлов не определяет автоматически
язык, приходится использовать --language-force)

 + Tcl
 /usr/share/tcl (*.tcl, кроме pkgIndex.tcl)
 c,m,p

 + Vim
 /usr/share/vim
 a,f,v

Ну это в принципе всё, что может встретится в дистрибутиве в
установленной из пакетов системе.

По поводу find-tags - получается один вызов ctags на язык (потому
как мы хотим держать теги для разных языков в разных файлах).
Список файлов либо генерится самим скриптом find-tags, при этом
идёт автоматический поиск по всем поддерживаемым языкам, либо
передаётся в виде аргумент(а,ов) командной строки, при этом
появляется обязательный параметр - язык.

Критикуйте, но учтите, что я это всё пишу в ни разу не
выспавшемся состоянии.

-- 
Regards,
Sir Raorn.

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

  parent reply	other threads:[~2005-02-28 14:37 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-02-25  8:56 Gleb Stiblo
2005-02-25  9:05 ` Alexey I. Froloff
2005-02-25  9:23   ` Gleb Stiblo
2005-02-25 10:38     ` Alexey I. Froloff
2005-02-25 12:48       ` Alexey Rusakov
2005-02-26 10:11         ` Alexey I. Froloff
2005-02-26  9:57     ` Alexey I. Froloff
2005-02-28  8:27       ` Gleb Stiblo
2005-02-28  8:40         ` Vital Khilko
2005-02-28 14:37         ` Alexey I. Froloff [this message]
2005-02-28 15:09           ` Alexey Rusakov
2005-02-28 15:36             ` Vital Khilko
2005-02-28 15:38             ` Alexey I. Froloff
2005-02-28 15:53               ` Alexey Rusakov
2005-02-28 20:11                 ` Alexey I. Froloff
2005-02-28 15:54           ` Sergey Bolshakov
2005-02-28 20:26             ` Alexey I. Froloff
2005-02-28 23:47         ` Sergey V Kalinin
2005-02-28 23:51           ` Alexey Rusakov
2005-02-28 23:57             ` Sergey V Kalinin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050228143739.GB19400@hell.immo.ru \
    --to=raorn@immo.ru \
    --cc=devel@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git