Ctags: рдпреВрдирд┐рд╡рд░реНрд╕рд▓ ctags рдХреБрдЫ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдорд╛рдиреНрдп `utf-8` рд╡рд░реНрдг рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 30 рдЬреБрд▓ре░ 2018  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: universal-ctags/ctags

(
рд╣рдорд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдпрджрд┐ рдЖрдк рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рднрд░реЗрдВ
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЯреЗрдореНрдкрд▓реЗрдЯред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдХрд╛ рдХрд╕реНрдЯрдо CTAG рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ
рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░реЗрдВ, рдХреГрдкрдпрд╛ рд╣рдореЗрд╢рд╛ рдкрд╣рд▓реЗ рдХреЗ рд░реВрдк рдореЗрдВ --options=NONE рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
ctags рдЪрд▓рд╛рддреЗ рд╕рдордп рд╡рд┐рдХрд▓реНрдкред

рдЕрдиреНрдпрдерд╛, рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╣рдЯрд╛рдПрдВ рдФрд░ рдЕрдкрдиреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдирдП рд╕рд┐рд░реЗ рд╕реЗ рд▓рд┐рдЦреЗрдВред
рдЙрджрд╛рд╣рд░рдг рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╕рдордЭрдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЧрд┐рдЯрд╣рдм рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдФрд░ рдорд╛рд░реНрдХрдбрд╛рдЙрди рдиреЛрдЯреЗрд╢рди рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВред
рдореЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЯреВрдЯреЗ рд╣реБрдП рдЯреЗрдХреНрд╕реНрдЯ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓рддреЗ рд╣реИрдВ
рдбреЗрд╡рд▓рдкрд░реНрд╕ рдкрд╛рдЧрд▓ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред
)


рдкрд╛рд░реНрд╕рд░ рдХрд╛ рдирд╛рдо:

ctags рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдЬрд┐рд╕ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:

$ ctags -R

рдореЗрд░реЗ рдкрд╛рд╕ .ctags рдпрд╛ рдХрд╣реАрдВ рдФрд░ рдореЗрдВ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдирд╣реАрдВ рд╣реИред рдпрд╣ рдПрдХ рддрд╛рдЬрд╝рд╛ VM рд╣реИ рдЬрд┐рд╕ рдкрд░ рдпрд╣ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдЗрдирдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА: https://github.com/pallets/jinja/blob/master/jinja2/_identifier.py

рдЯреИрдЧ рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ рдЖрдк рд╕рдВрддреБрд╖реНрдЯ рдирд╣реАрдВ рд╣реИрдВ:

Universal-ctags рдХреБрдЫ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдЕрдорд╛рдиреНрдп utf-8 рд╡рд░реНрдг рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рддрд╛ рд╣реИред

рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд рдЯреИрдЧ рдЖрдЙрдЯрдкреБрдЯ:

рд╕рднреА рдорд╛рдиреНрдп utf-8 рд╡рд░реНрдгреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдкреЗрдХреНрд╖рд┐рдд рдЯреИрдЧ рдЖрдЙрдЯрдкреБрдЯред

ctags рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг:

$ ctags --version
Universal Ctags 0.0.0(3522685), Copyright (C) 2015 Universal Ctags Team
Universal Ctags is derived from Exuberant Ctags.
Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert
  Compiled: July 27 1018, 23:16:36
  URL: https://ctags.io/
  Optional compiled features: +wildcards, +regex, +iconv, +option-directory, +xpath

рдЖрдк ctags рдмрд╛рдЗрдирд░реА рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:

(
ctags рдмрд╛рдЗрдирд░реА рдХреЛ ubuntu-16.04 VM рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ automate , autoreconf ctags рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ vim рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рд╕рдВрд╢реЛрдзрди рдирд╣реАрдВ рд╣реИред
)

@lilydjwg рдиреЗ рдореБрдЭреЗ рдмрддрд╛рдпрд╛ рдХрд┐ ctags рдЕрдорд╛рдиреНрдп utf-8 рд╡рд░реНрдг рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░ рд░рд╣рд╛ рдерд╛, рднрд▓реЗ рд╣реА рдЯреИрдЧ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛ рд░рд╣реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рднреА рдорд╛рдиреНрдп utf-8 рд╡рд░реНрдг рд╣реЛрдВ:
https://github.com/vim/vim/issues/3213#issuecomment -406961075

ctags рдХрд╛ рд╕рдВрдХрд▓рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ ctags рдореЗрдВ рдПрдХ рдмрдЧ рд╣реИ рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг
рдкреБрд░рд╛рдирд╛ Execuberant ctags рдЙрдмрдВрдЯреВ рдкрд░ sudo apt-get install ctags рджреНрд╡рд╛рд░рд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
16.04 рдХреЛрдИ рдЕрдорд╛рдиреНрдп utf-8 рд╡рд░реНрдг рд╕рдореНрдорд┐рд▓рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдореИрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реВрдБ
Universal-ctags рд╕реНрд░реЛрдд рд╕реЗ рдФрд░ рдпрд╣ рдпрд╣рд╛рдВ рджрд┐рдП рдЧрдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдирд╣реАрдВ рд╣реИ:
https://github.com/universal-ctags/ctags/blob/master/docs/autotools.rst , рдпрд╣
рдЕрдорд╛рдиреНрдп utf-8 рд╡рд░реНрдг рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реЗрдЧрд╛ред рдпрд╣рд╛рдБ рд╕рдмреВрдд рд╣реИ:

рдХреЗрд╡рд▓ sudo apt-get install ctags рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ exuberant-ctags рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рд╕рд╛рде:

2018-07-29_19-03-44

рдЗрд╕ рдкреЛрд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрд░реЛрдд (рдирд╡реАрдирддрдо рдкреНрд░рддрд┐рдмрджреНрдз) рд╕реЗ рд╕рдВрдХрд▓рд┐рдд Universal-ctags рд╕рд╛рде,
рдпрд╣рд╛рдВ рд╕реЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд:
https://github.com/universal-ctags/ctags/blob/master/docs/autotools.rst :

2018-07-29_19-10-22

рдпрд╣ рд╡рд┐рдо рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдЕрдорд╛рдиреНрдп utf-8 рд╡рд░реНрдг рд╣реИрдВ
vim.eval , vim.eval рдмреНрд░реЗрдХ рд╣реЛ рдЧрдпрд╛ рдФрд░ рдЗрд╕рд╕реЗ рдХреЛрдИ рдЯреИрдЧ рд╡рд╛рдкрд╕ рдирд╣реАрдВ рдЖрдпрд╛
рд╕рдмред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, viml рдореЗрдВ рдирд┐рд╣рд┐рдд рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рддрд░реАрдХрд╛ рд╣реИ
python-name рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ vim.eval python-name рд╕реНрдерд╛рди рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ред рддреЛ, рдореЗрдВ рдХреЛрдИ рдЕрдиреНрдп рдкреНрд▓рдЧрдЗрди
рд╡рд┐рдо рдпрд╛ рдлрд┐рд░ рдЬрд╣рд╛рдВ рднреА рдЗрд╕реА рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛрдВрдЧреАред @ludovicchabant рдХреЗ рд▓рд┐рдП
рдЙрджрд╛рд╣рд░рдг рдХреЛ рдРрд╕реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдЯреИрдЧ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкреЛрд╕реНрдЯ-рдкреНрд░реЛрд╕реЗрд╕ рдХрд░рдирд╛ рдкрдбрд╝рд╛:
https://ludovic.chabant.com/devblog/2017/02/25/aaa-gamedev-with-vim/

рд╕рд╛рде рд╣реА рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкрдХрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП ctrl-py-matcher рдмрджрд▓рдирд╛ рдкрдбрд╝рд╛ред
https://github.com/ludovicchabant/ctrlp-py-matcher/blob/2f6947480203b734b069e5d9f69ba440db6b4698/autoload/pymatcher.py#L22

рдРрд╕реА рдХрдИ рдЕрдиреНрдп рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВрдиреЗ рджреЗрдЦрд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ
рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рд╕рд┐рд░реНрдл рдПрдХ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рд╣реИред

рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмрдЧ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдЙрдореНрдореАрдж рдирд╣реАрдВ рд╣реИ рдХрд┐ ctags рдРрд╕рд╛ рдХрд░реЗрдЧрд╛
рдбрд┐рдЬрд╛рдИрдиред рдХреНрдпрд╛ рдЗрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ Exuberant Ctags рдореЗрдВ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛
рдпреВрдирд┐рд╡рд░реНрд╕рд▓-ctags рдХрд┐рд╕ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ?

рд╕рдВрджрд░реНрдн: https://github.com/vim/vim/issues/3213#issuecomment -408727629

рд╕рднреА 7 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореЗрд░реЗ рд▓рд┐рдП #1275 рдЬреИрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ: рдирдпрд╛ pattern-length-limit рд╡рд┐рдХрд▓реНрдк рдПрдХ рдордирдорд╛рдирд╛ рдмрд╛рдЗрдЯ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХрд╛рдЯ рд░рд╣рд╛ рд╣реИ, рдЬреЛ рдПрдХ рдЪрд░рд┐рддреНрд░ рдЕрдиреБрдХреНрд░рдо рдХреЗ рдмреАрдЪ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред #163, #640 рдФрд░ #1018 рджреЗрдЦреЗрдВред

рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП https://github.com/universal-ctags/ctags/issues/1275#issuecomment -274489859 рдЬреИрд╕рд╛ рдХреБрдЫ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

@alphaCTzo7G #1807 рджреЗрдЦреЗрдВ, рдХреНрдпрд╛ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдареАрдХ рдХрд░рддрд╛ рд╣реИ?

@ рдмреА 4 рдПрди , рдЖрдкрдХреА рддреНрд╡рд░рд┐рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж ...

рдлрд╝рд╛рдЗрд▓ рдкрд░ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рд╣реИ _identifier.py , #1805 рдХрдорд┐рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, ctags рдЕрдм рдордирдорд╛рдиреЗ рд╕реНрдерд╛рди рдкрд░ рдЕрдорд╛рдиреНрдп рд╡рд░реНрдг/рдХрдЯреМрддреА рд╕рдореНрдорд┐рд▓рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдореИрдВ рдЕрдЧрд▓реЗ рдХреБрдЫ рджрд┐рдиреЛрдВ рдореЗрдВ рдЗрд╕ рдкреАрдЖрд░ рдХреЛ рдЕрдкрдиреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдЖрдЬрд╝рдорд╛рдЙрдВрдЧрд╛ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдореЗрд░реЗ рдкреВрд░реЗ рднрдВрдбрд╛рд░ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдпрд╛ рдЕрдиреНрдп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рдЙрддреНрд╕рд░реНрдЬрди рдХрд░рддрд╛ рд╣реИ

рдЪреВрдВрдХрд┐ ctrlp рдФрд░ ctrlp-py-matcher рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рдкреНрд▓рдЧрдЗрдиреНрд╕ рд╣реИрдВ, рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ #1807 рдХреЛ рдорд░реНрдЬ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдП рддреЛ vim рдФрд░ рдЕрдиреНрдп рдЯреЗрдХреНрд╕реНрдЯ-рдПрдбрд┐рдЯрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ ctrlp рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ ctrlp-py-matcher рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд┐рдП рдмрд┐рдирд╛ред

рдПрдХ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдереА рдЬреЛ рдореБрдЭреЗ рдорд┐рд▓реА рдереА, рдЬреЛ vim.eval рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рдХрд░ рд░рд╣реА рдереА, рдФрд░ рдЗрд╕рдореЗрдВ grep -axv '.*' misc.html ( misc.html https:/ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЕрдорд╛рдиреНрдп utf-8 рд╡рд░реНрдг рд╢рд╛рдорд┐рд▓ рдереЗред /github.com/alphaCTzo7G/test)ред рдореИрдВрдиреЗ рдЬреЛ рджреЗрдЦрд╛ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ ctags рдЕрдорд╛рдиреНрдп utf-8 рд╡рд░реНрдгреЛрдВ рдХреЛ рдЯреИрдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ misc.html рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реЗрдЧрд╛ред

рдХреНрдпрд╛ рдпрд╣ ctags рд▓рд┐рдП рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЕрдорд╛рдиреНрдп рд╡рд░реНрдгреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЙрдиреНрд╣реЗрдВ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕реЗ @tonymec рдиреЗ рдпрд╣рд╛рдВ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдерд╛? (рдЕрд╡реИрдз рдЕрдиреБрдХреНрд░рдо рдХреЛ рд╡рд░реНрдг рдХреЗ рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рдЙрджрд╛рд╣рд░рдгреЛрдВ рд╕реЗ рдмрджрд▓реЗрдВ - (U+FFFD рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рд╡рд░реНрдг) рдЬреЛ рдареАрдХ рдЙрд╕реА рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рд╣реИред): https://github.com/vim/vim/issues/3213#issuecomment -405211243 ?

IIUC, ctags (рд╡рд┐рдкреБрд▓ ctags, рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ, рдЬреЛ рдЙрдкрд▓рдмреНрдз ctags рдкреНрд░реЛрдЧреНрд░рд╛рдореЛрдВ рдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ рдПрдХ рд╣реИ) рд╡рд┐рдо рд╕реЗ рдЕрд▓рдЧ рд╕реЗ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рднрд▓реЗ рд╣реА рдЗрд╕рдХреЗ рд▓реЗрдЦрдХ рдмреНрд░реИрдо рдХреЛ рдЬрд╛рдирддреЗ рд╣реЛрдВ рдФрд░ рднрд▓реЗ рд╣реА рд╡реЗ рдХрднреА-рдХрднреА рд╡рд┐рдо рдФрд░ ctags рдХреЛ рдПрдХ рд╕рд╛рде рдмреЗрд╣рддрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рдХрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реЛрдВред

ctags рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЯреЗрдХреНрд╕реНрдЯ рдХреЛ рдХреЗрд╡рд▓ рдмрд╛рдЗрдЯреНрд╕ рдХреЗ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирдирд╛ тАЛтАЛрд╡реИрдз рд╣реИ: рдЪрд╛рд╣реЗ рд╡рд╣ UTF-8, рд▓реИрдЯрд┐рди1, рд▓реИрдЯрд┐рди9 рдпрд╛ рдХреЛрдИ рдЕрдиреНрдп ISO 8859 рд╡рд░реНрдгрд╕реЗрдЯ рд╣реЛ, рдПрдХ рд╕реНрдкреЗрд╕ 0x20 рд╣реИ, рдПрдХ рд╣рд╛рд░реНрдб рдЯреИрдм 0x09 рд╣реИ, рдПрдХ рд▓рд╛рдЗрди рдмреНрд░реЗрдХ 0x0A рд╣реИ рд╕рдВрднрд╡рддрдГ 0x0D, рдЖрджрд┐ рд╕реЗ рдкрд╣рд▓реЗ; рдФрд░ рдПрдХ рдЕрд╢рдХреНрдд рдмрд╛рдЗрдЯ, рдЬреЛ 0x00 рд╣реЛрдЧреА, рдХрд┐рд╕реА рдкрд╛рда рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░рдХрдЯ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред Ctags рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рд╡рд╣ ASCII-рд╕рдВрдЧрдд рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реЛ, рдФрд░ рдЗрд╕рд▓рд┐рдП рдЙрд╕реЗ рдЗрд╕ рдмрд╛рдд рдХреА рдкрд░рд╡рд╛рд╣ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреМрди рд╕рд╛ рд╣реИред рдХреЗрд╡рд▓ EBCDIC рдЬреИрд╕реЗ рдХреБрдЫ рдмрд╛рд╣рд░реА рд╡рд░реНрдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдкрд╛рда рдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЧреИрд░-ASCII (EBCDIC, IIRC, AI рдореЗрдВ 0xC1-0xC9, JR 0xD1-0xD9, SZ 0xE2-0xE9, 0-9 0xF0-0xF9 рд╣реИрдВ) рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред , рдФрд░ рдореБрдЭреЗ рдпрд╛рдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рд╕реНрдкреЗрд╕, рдЯреИрдм, рд▓рд╛рдЗрди рдмреНрд░реЗрдХ, рдбреИрд╢, рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреНрдпрд╛ рд╣реИрдВ; рд▓реЗрдХрд┐рди рдЖрдк рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ ASCII рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЬреАрдм рд╣реИ)ред

рдЖрдИрдПрдордПрдЪрдУ, рд╕реАрдЯреАрдПрдЬреА рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЕрдЪреНрдЫрд╛ рдкреБрд░рд╛рдирд╛ рд╕рд┐рджреНрдзрд╛рдВрдд рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ: рдХрдЪрд░рд╛ рдЕрдВрджрд░, рдХрдЪрд░рд╛ рдмрд╛рд╣рд░ред

рд╕рд╛рджрд░,
рдЯреЛрдиреАред

@tonymec .. рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ .. рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реИ рдХрд┐ рдЕрдиреНрдп рдЯреИрдЧ рдЬрдирд░реЗрд╢рди рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди universal-ctags рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИ, рдФрд░ universal-ctags рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдореЗрдВ рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ рдПрдХ рдмрдбрд╝рд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реЛрдЧрд╛ vim рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реИрдВред

рддреЛ рдореИрдВ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдХреНрдпрд╛ рдпреЗ 2 рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЕрдиреНрдп рд╡рд┐рдЪрд╛рд░ рд╣реИ рдХрд┐ рдЕрд╡реИрдз utf-8 рд╡рд░реНрдгреЛрдВ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рдирд╛ рд╣реИ?

  1. рдореИрдВ рдпрд╣ рднреА рджреЗрдЦрд╛ рдХрд┐ ctags рдХреЗ рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рд╣реИ +iconv , рдЬрд┐рдирдореЗрдВ рд╕реЗ рдЙрдкрдпреЛрдЧ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИ libiconv ред рдЬрдм рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ iconv рдЕрд╡реИрдз utf8 рд╡рд░реНрдгреЛрдВ рдХреЛ рд╣рдЯрд╛ рд╕рдХрддрд╛ рд╣реИред рддреЛ рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЕрдЧрд░ рдореИрдВ --input-enconding=utf-8 рдФрд░ --output-encoding=utf-8 рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рд╕рднреА рдЕрд╡реИрдз utf-8 рд╡рд░реНрдгреЛрдВ рдХреЛ рдХрд╛рдиреВрдиреА utf-8 рд╡рд░реНрдгреЛрдВ рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЗрд╕реЗ https://media.readthedocs.org/pdf/ctags/latest/ctags.pdf рдХреЗ рдЦрдВрдб 1.3.4 рдореЗрдВ рд╕рдордЭрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:

Two new options have been introduced (--input-encoding=IN and --output-encoding=OUT). Using the encoding specified with these options ctags converts input from IN to OUT. ctags uses the converted strings when writing the pattern parts of each tag line. As a result the tags output is encoded in OUT encoding. In addition OUT is specified at the top the tags file as the value for the TAG_FILE_ENCODING pseudo tag. The default value of OUT is UTF-8. NOTE: Converted input is NOT passed to language parsers. The parsers still deal with input as a byte sequence. With --input-encoding-<LANG>=IN, you can specify a specific input encoding for LANG. It overrides the global default value given with --input-encoding

  1. рдЕрд╡реИрдз utf8 рд╡рд░реНрдгреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рд╕рдВрдкрд╛рджрдХ рдкрд░ рдЫреЛрдбрд╝ рджреЗрдВред рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдпрд╛ рддреЛ vim.eval рдХреЛ рдареАрдХ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдпрд╛ рдПрдХ vimL рдлрд╝рдВрдХреНрд╢рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ vim.eval рдХреЛ рдкрд╛рд╕ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЕрд╡реИрдз utf-8 рд╡рд░реНрдгреЛрдВ рдХреЛ рдкрд╛рд░реНрд╕ рдФрд░ рд╣рдЯрд╛ рд╕рдХрддрд╛ рд╣реИред vim.eval ..

@alphaCTzo7G рдореИрдВ @tonymec рдФрд░ рдЙрдирдХреЗ рдирд┐рд╖реНрдХрд░реНрд╖ рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЙрдЪрд┐рдд рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЛ рдкрд╣рдЪрд╛рдирдиреЗ рдореЗрдВ рдмрд╣реБрдд рдкрд░реЗрд╢рд╛рдиреА рд╣реЛрддреА рд╣реИ - рдФрд░ рдореИрдВ рдЙрдЪрд┐рдд рдкрд░ рдЬреЛрд░ рджреЗрддрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдвреВрдВрдврдирд╛ рдЖрд╕рд╛рди рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЗрдирдкреБрдЯ рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рдорд╛рдиреНрдп рд╣реЛрдЧрд╛, рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд╣реЗрдВ рдпрджрд┐ рд╕рднреА 8 рдмрд┐рдЯ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдпрд╣ рдЬрд╛рдирдирд╛ рдХрд┐ рдпрд╣ рд╕рд╣реА рд╣реИ рдпрд╛ рдирд╣реАрдВ рдПрдХ рдореБрд╢реНрдХрд┐рд▓ рдпрд╛ рдЕрд╕рдВрднрд╡ рд╣реИ: рдХрд╣реЗрдВ, рдЖрдИрдПрд╕рдУ 8859-1 рдФрд░ 8859-15 рдХреЗ рдмреАрдЪ рдХреЛрдИ рдХреИрд╕реЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ? рд╕рдорд╛рдзрд╛рдиреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдЖрд╡реГрддреНрддрд┐ рдФрд░ рд╕рдВрджрд░реНрдн рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрдЯрд┐рд▓ рдЕрдиреБрдорд╛рдиреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВ; рдпрд╛ HTML рдЬреИрд╕реА рдХреБрдЫ рднрд╛рд╖рд╛рдУрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рдЕрдзрд┐рдХ рднреЛрд▓рд╛ рд╡рд┐рдЪрд╛рд░ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХреЛ рдирд┐рдХрд╛рд▓рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдЧрд▓рдд рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, ctags рдпрд╣рд╛рдВ рдПрдХ рдХрдард┐рди рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИ: рдХрдИ, рдпрджрд┐ рдЕрдзрд┐рдХрддрд░ рдирд╣реАрдВ, рддреЛ рдЙрдкрднреЛрдХреНрддрд╛ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЛ рд╕рдВрднрд╛рд▓ рдирд╣реАрдВ рдкрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдЬреЗрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП рдЯреИрдЧ рдХреЛ рдмрд╛рдЗрдЯ рд╕реНрддрд░ рдкрд░ рдорд┐рд▓рд╛рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЯреИрдЧ рдкреИрдЯрд░реНрди рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдирд╛рдо рдХреЗ рд▓рд┐рдП рдЧреНрд░реАрдкрд┐рдВрдЧ рдХрд░рдирд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЛ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдЯреИрдЧ рдХреЛ рдмрд╛рдЗрдЯ рд╕реНрддрд░ рдкрд░ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдореЗрд▓ рдЦрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдЖрд╕рд╛рди рдерд╛ рдЬрдм рд╣рдореЗрдВ рдХреЗрд╡рд▓ ASCII рдХреА рдкрд░рд╡рд╛рд╣ рдереА, рд▓реЗрдХрд┐рди рдЕрдм рд╣рдо рдЗрддрдиреЗ рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рдирд╣реАрдВ рд╣реИрдВ ... UTF-8 рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдЕрдкрдирд╛рдпрд╛ рдирд╣реАрдВ рдЧрдпрд╛ рдерд╛ред
рдпрд╣ рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ рд╡рд░реНрдгреЛрдВ рдХреЗ рд╕рд╛рде рдмрджрд▓рдиреЗ рдХреЗ рд╡рд┐рдЪрд╛рд░ рдкрд░ рднреА рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ: рдЙрдкрднреЛрдХреНрддрд╛ рдРрд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдЪрд░рд┐рддреНрд░ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ? рдЗрд╕реЗ рдХрдо рд╕реЗ рдХрдо рдЗрд╕реЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрднрд╛рд▓рдирд╛ рд╣реЛрдЧрд╛ред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрдЧрд░ рдЖрдк рдЕрдорд╛рдиреНрдп UTF-8 рдХреЛ U+FFFD рд╕реЗ рдмрджрд▓рдиреЗ рдпрд╛ рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ рдХрд░рдиреЗ рд╕реЗ рдЦреБрд╢ рд╣реИрдВ, рддреЛ рд╢рд╛рдпрдж рдЖрдк ctags рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдкреЛрд╕реНрдЯ-рдкреНрд░реЛрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

@ рдмреА 4 рдПрди , рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгреА рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддреЗ рд╣реИрдВред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЬреНрдпрд╛рджрд╛рддрд░ utf-8 рдПрдиреНрдХреЛрдбреЗрдб рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рдирд┐рдкрдЯрддрд╛ рд╣реВрдВ рдФрд░ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП utf-8 рдПрдиреНрдХреЛрдбреЗрдб рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рдмрддрд╛рдпрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рдирдореЗрдВ рдХрднреА-рдХрднреА рдордирдорд╛рдиреА рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╣реЛрддреА рд╣реИред

рдореИрдВ vim-gutentags рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдФрд░ рдпрд╣ рдкреЛрд╕реНрдЯ-рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдкреЛрд╕реНрдЯ-рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЯреИрдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдХреА utf-8 рд╡рд░реНрдг, рдЬрдм рдореИрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА post-processing рдореЗрдВ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ vim-gutentags , рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ . рддреЛ рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдПрдХ рдФрд░ рдордЬрдмреВрдд рд╕рдорд╛рдзрд╛рди рдирд┐рдХрд╛рд▓рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ .. рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╡рд╣ рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рдирд╣реАрдВ рд╣реИ рддреЛ рдореБрдЭреЗ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рджреЗрдЦрдирд╛ рд╣реЛрдЧрд╛ ..

рдлрд╝рд╛рдЗрд▓ рдХреЗ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдЗрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдХреЗ рдкреАрдЫреЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ: https://stackoverflow.com/questions/805418/how-to-find-encoding-of-a-file-in-unix -рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓рд┐рдкрд┐рдпреЛрдВ

рдЬреИрд╕реЗ enca , file , uchardet , enguess ? рдпреЗ рд╕рднреА рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЙрдкрдпреЛрдЧрд┐рддрд╛рдПрдБ рд╣реИрдВ .. рд▓реЗрдХрд┐рди рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдХреБрдЫ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ ctags рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдХрд╛рд░рдг рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ, рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХрд░рдирд╛ рдХрднреА рднреА рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХреЛ рдХрд╡рд░ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕рдорд╛рдзрд╛рди рдХреБрдЫ рднреА рдирд╣реАрдВ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ ..

рдореИрдВ --input-encoding (and/or --input-encoding-<LANG>) and --output-encoding options рдЖрдЬрд╝рдорд╛рдЙрдВрдЧрд╛ .. рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╣рд░ рд╕рдордп рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмрд╣реБрдд рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдХреБрдЫ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдПрдХ рд╣реА рднрдВрдбрд╛рд░ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╣реЛрдВрдЧреЗ, рдЬрдм рддрдХ рдХрд┐ ctags рдЖрдВрдХрдбрд╝реЗ рдирд╣реАрдВ рдмрддрд╛рддреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЛ рд╕рд╣реА рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рд╡рд╛рдВрдЫрд┐рдд рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдереВрдХ рджреЗрдВред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕