Size: a a a

Emacs — русскоговорящее сообщество

2021 January 19

PS

Pavel Samolysov in Emacs — русскоговорящее сообщество
А можно настроить несколько функций на одну комбинацию клавиш, чтобы они вызывплись в зависимости от контекста? Или есть какой-то признак, что функция не шмогла и их можно объединить по or? Типа если M-. Когда курсор после имени функции открывалось её определение, а если после имени файла - этот файл (обе функции в отдельности знаю, но хочу чтобы они были на одной кнопке).
источник

VL

Valeriy L in Emacs — русскоговорящее сообщество
Pavel Samolysov
А можно настроить несколько функций на одну комбинацию клавиш, чтобы они вызывплись в зависимости от контекста? Или есть какой-то признак, что функция не шмогла и их можно объединить по or? Типа если M-. Когда курсор после имени функции открывалось её определение, а если после имени файла - этот файл (обе функции в отдельности знаю, но хочу чтобы они были на одной кнопке).
Если просто хочешь файл, то C-x C-f M-n
источник

VL

Valeriy L in Emacs — русскоговорящее сообщество
Pavel Samolysov
А можно настроить несколько функций на одну комбинацию клавиш, чтобы они вызывплись в зависимости от контекста? Или есть какой-то признак, что функция не шмогла и их можно объединить по or? Типа если M-. Когда курсор после имени функции открывалось её определение, а если после имени файла - этот файл (обе функции в отдельности знаю, но хочу чтобы они были на одной кнопке).
Если и для другого чего-то и только at-point то советую посмотреть на пакет embark
источник

PS

Pavel Samolysov in Emacs — русскоговорящее сообщество
Valeriy L
Если просто хочешь файл, то C-x C-f M-n
Да я нашел на емакс вики удобную функцию для открытия файла или там урла, забиндил на ctrl-b как в идее, но хочу открыть функцию или файл на одной кнопке
источник

VL

Valeriy L in Emacs — русскоговорящее сообщество
Valeriy L
Если и для другого чего-то и только at-point то советую посмотреть на пакет embark
Он и в минибуфере будет работать
источник

PS

Pavel Samolysov in Emacs — русскоговорящее сообщество
Valeriy L
Если и для другого чего-то и только at-point то советую посмотреть на пакет embark
О, спасибо за наводку
источник

VL

Valeriy L in Emacs — русскоговорящее сообщество
Pavel Samolysov
Да я нашел на емакс вики удобную функцию для открытия файла или там урла, забиндил на ctrl-b как в идее, но хочу открыть функцию или файл на одной кнопке
Ты скорее всего про ffap
источник

VL

Valeriy L in Emacs — русскоговорящее сообщество
Find file at point
источник

VL

Valeriy L in Emacs — русскоговорящее сообщество
Valeriy L
Если просто хочешь файл, то C-x C-f M-n
С этим ffap не особо нужен
источник

PS

Pavel Samolysov in Emacs — русскоговорящее сообщество
Да, про него, только обернут чтобы не требовал подтверждения. Попробую эту комбинацию, спасибо. Но интересно как объединять интерактивные функции или нужно писать свою, где самому проверять условия?
источник

A

Aragaer in Emacs — русскоговорящее сообщество
а кто меня научит, как написать условие вида "если данный файл находится в проекте"? Может быть даже зафиксировать понятие "проект" как "где-то в одном из родительских каталогов существует файл package.yaml"
источник

a

akater in Emacs — русскоговорящее сообщество
Aragaer
а кто меня научит, как написать условие вида "если данный файл находится в проекте"? Может быть даже зафиксировать понятие "проект" как "где-то в одном из родительских каталогов существует файл package.yaml"
Вопрос непонятен.  Если известно, как зафиксировано понятие «проект», то написать предикат легко же.
источник

A ß in Emacs — русскоговорящее сообщество
Aragaer
а кто меня научит, как написать условие вида "если данный файл находится в проекте"? Может быть даже зафиксировать понятие "проект" как "где-то в одном из родительских каталогов существует файл package.yaml"
locate-dominating-file посмотри функцию
источник

A

Aragaer in Emacs — русскоговорящее сообщество
ну вот вопрос именно в том, как реализовать такой вот поиск вверх по дереву
источник

A

Aragaer in Emacs — русскоговорящее сообщество
ага, пасибо, оно
источник

A

Aragaer in Emacs — русскоговорящее сообщество
а как из буфера определить имя файла, если есть?
источник

A ß in Emacs — русскоговорящее сообщество
(buffer-file-name)
источник

A ß in Emacs — русскоговорящее сообщество
или можно сразу default-directory брать
источник

A

Aragaer in Emacs — русскоговорящее сообщество
ага, можно даже просто переменную buffer-file-name
источник

A ß in Emacs — русскоговорящее сообщество
у буфера не обязательно должен быть файл, если что
источник