Size: a a a

2020 July 26

GK

Georgy Komarov in pro.vim
Sergey Sikorskiy
Можно ли где-то взять готовый compiler file for avr-gcc? А то что-то не нагугливается ничего  ...
Чем avr-gcc отличается от других Сишных компиляторов? Почему нельзя вызывать его через Makefile, с дефолтным makeprg?
Так-то написать свой compiler file несложно, вот пример. Здесь создаётся директория для сборки и вызывается транспайлер по пути из глобальной переменной g:matiec_path.
источник

SK

Sevapp Keller in pro.vim
Vadim Goncharov
нынче в моде децентрализованные!
ну вообще, бессерверные скорее)
источник

SS

Sergey Sikorskiy in pro.vim
Georgy Komarov
Чем avr-gcc отличается от других Сишных компиляторов? Почему нельзя вызывать его через Makefile, с дефолтным makeprg?
Так-то написать свой compiler file несложно, вот пример. Здесь создаётся директория для сборки и вызывается транспайлер по пути из глобальной переменной g:matiec_path.
Если быть совсем конкретным,  то меня интересует только errorformat для этого компилятора. Остальное я легко сделаю сам.
Сообщение об ошибке выглядит так:
In file included from  [01m [Kkeyboards/kyria/keymaps/LoneGeek01/keymap.c:16:0 [m [K:
[01m [Kkeyboards/kyria/keymaps/LoneGeek01/keymap.c:46:12: [m [K  [01;31m [Kerror:  [m [K‘ [01m [KKC_ES [m [K’ undeclared here (not in a function)
    LT(_R, KC_ES), KC_Q          , KC_W          , KC_E          , KC_R          , KC_T          ,
[01;32m [K            ^ [m [K
[01m [Kkeyboards/kyria/kyria.h:57:56: [m [K  [01;36m [Knote:  [m [Kin definition of macro ‘ [01m [KLAYOUT_stack [m [K’
    { KC_NO, KC_NO, L05,   L04,   L03,   L02,   L01,   L00   }, \
[01;32m [K                                                        ^ [m [K
[01m [Kkeyboards/kyria/keymaps/LoneGeek01/keymap.c:46:5: [m [K  [01;36m [Knote:  [m [Kin expansion of macro ‘ [01m [KLT [m [K’
    LT(_R, KC_ES), KC_Q          , KC_W          , KC_E          , KC_R          , KC_T          ,
[01;32m [K     ^ [m [K
 [31;01m[ERRORS] [0m

Возможно, есть еще какие-то другие способы отфильтровать эти ESC-коды.
Но я пока что этого не нашел.
Короче, стандартный gcc.vim парсить это не может.
источник

SS

Sergey Sikorskiy in pro.vim
Просто не хочется на это дело убить много времени ...
источник

SS

Sergey Sikorskiy in pro.vim
ESC-коды отключил опцией компилятора, но все равно сообщение об ошибке не парсится ...
источник

GK

Georgy Komarov in pro.vim
Наверное надо прописать формат ошибок в errorformat
источник

SS

Sergey Sikorskiy in pro.vim
Его-то я и пытаюсь найти готовый :)
источник

VK

Vlad Ku in pro.vim
всем привет, подскажите плиз. как исполнить выделенный vimscript код?
источник

NG

Nicholas Guriev in pro.vim
y:<Ctrl-R>"<CR>
источник

NG

Nicholas Guriev in pro.vim
1. скопировать
2. войти в командный режим
3. вставить
4. выполнить
источник

VK

Vlad Ku in pro.vim
спс, а если код многострочный?
источник

NG

Nicholas Guriev in pro.vim
хм... похоже, такое копирование и вставка не сработают
источник

G

GNU/Vsevolod in pro.vim
Почему string interpolation работает, к примеру, в
execute "!command %"
но не работает в
system("command %")?
источник

NG

Nicholas Guriev in pro.vim
функцию expand() вызывать ещё надо
источник

G

GNU/Vsevolod in pro.vim
Nicholas Guriev
функцию expand() вызывать ещё надо
А почему такое поведение?
источник

NG

Nicholas Guriev in pro.vim
разные цели — разные функции
источник

G

GNU/Vsevolod in pro.vim
Nicholas Guriev
разные цели — разные функции
Я о том, как понять где работает интерполяция, а где нет. К примеру, в bash/sh/zsh интерполяция есть implicit везде, где двойные кавычки (незаэкранированы)
источник

G

GNU/Vsevolod in pro.vim
В вим же, где-то так, где-то нет
источник

NG

Nicholas Guriev in pro.vim
в Bash там разная интерполяция, в зависимости от наличия кавычек
источник

JC

Julian =) Coffee in pro.vim
system вообще не баш
источник