タグ

emacsに関するtakuma510のブックマーク (71)

  • 2020年代のEmacs入門

    Author: conao3 Published: 2020-08-25 Last Modified: 2020-12-04 GitHub Source: md はじめに Emacsは1972年にMITで生まれ、今日に至るまで名だたるハッカーに愛されてきたエディタです。 Emacsがハッカーに愛されている理由は、Emacsがそれ自体、動的なEmacs Lisp環境であり、エディタの動作をEmacsの開発者ではないあなたが、ビルドなしで動的に自由にハックできることです。 OSと協調する必要のあるEmacsのコアとEmacs LispそのもののコアをC言語で提供する他は、ほとんど全ての機能がEmacs Lispによって提供されています。 あなたは細部にわたってEmacsの全てを制御できますし、Emacsの上にあなたの思い描く、あらゆるアプリケーションを構築することができます。 Emacsはあな

    2020年代のEmacs入門
  • 好みのエディタに快適な開発環境を提供するLSP - Qiita

    みなさん、エディタは何を使われていますか? 私はEclipseもIntelliJもVisualStudioもviもAtomやVSCodeももろもろ使ってきましたが、毎日orgで色々記録を取ったりと、なんだかんだEmacsが好きです。とはいえ言語によっては他のエディタのほうが効率的なこともあるので、エディタを使い分けるということをしていました。しかし、LSPという平和的なプロトコルの登場によって、エディタ間格差が緩和されつつあるのです。 図1: Emacsのlsp-uiとlsp-goの利用例 LSPに出会ったきっかけは数年前のGoカンファレンス(略して合コン)でした。Sourcegraphの人の発表でサービスを知り、Emacs用の開発支援ツールのベータテストだったりを見ているうちにgo-langserverが公開されていました。 LSPは、発表されてからすでに数年が経過し、今では、C/C++

    好みのエディタに快適な開発環境を提供するLSP - Qiita
  • さよならhelm、ようこそivy/counsel

    helm から ivy に移行しました。その記録です。 (設定集) https://gist.github.com/takaxp/86158fe74b8268843571c42b48a4336c

    さよならhelm、ようこそivy/counsel
  • Emacs で LSP を活用してみる - Qiita

    LSP とは? Language Server Protocol (LSP) は、言語の解析などを行う Language Server と各ツール(クライアント)が通信・連携する際のプロトコルを規定するものです。 従来、コード補完や定義参照などの機能は各ツールが独自に、かつ言語ごとに実装してきましたが、それにはかなりの労力が必要でした。しかし LSP を用いることで、各ツールは Language Server がどの言語を取り扱っているかを意識することなく、補完や定義参照を行うことができます。 なので、Emacs ユーザにとって LSP(と Language Server) は「IDE like なコード補完、定義参照、参照検索等を提供してくれるモノ」として捉えられるんじゃないかなと思います。 参考資料1: What is the Language Server Protocol? 参考資

    Emacs で LSP を活用してみる - Qiita
  • git のチカラで未知の言語でもオムニ補完 - Qiita

    デモ オムニ補完とは? オムニ補完は vim 界隈でわりとよく耳にする言葉ですが、IDE よろしくメソッド名などをいい感じに補完する機能です。 Emacs でも perl の変数名とかメソッド名をいい感じに補完してくれるperl-completion.el とか、 C/C++ の IDE モドキ CEDET などがあります。 auto-complete.el に最初から入っている CSS の補完も、プロパティ名によって補完候補を変えてくれたりかなりオシャレです。 なにをやったの? オムニ補完は便利なのですが、エディタがその言語のことを良く知っているか、あるいは言語処理系側がいい感じに補完候補を探してエディタに報告してくれる機能を持っていないと基的には実装できません。なので、言語ごとに別々のプラグインを入れるのが普通で、設定のほうはわりと面倒です。 そこで今回は git の力を借りて、言語

    git のチカラで未知の言語でもオムニ補完 - Qiita
  • Emacs で時の流れを感じる - Qiita

    なにをやったの ふらっと外に出てみたらちょうど空が夕焼けていて「ずいぶん日が短くなってきたなあ」とか、あるいは夜、なんとなく空を見上げてみたら綺麗な満月で「もうひと月たったか」とか、そんな、ふと時の流れを感じる瞬間が僕は好きです。 が、社会人になってから、退社したら外はもう夜、という日がほとんどになって、そんな瞬間を感じることが減ってしまったなあとふと思いました。 そんなわけで、その時刻の空の色(イメージ)、月齢、天気を反映した時計ウィジェットを作ってみました。モードラインなどに置いておくと、ふと目をやったときに、ちょっとほっこりできるかもしれません。 スクリーンショット モードラインに設置 色のサンプル インストール GitHub: https://github.com/zk-phi/sky-color-clock load-path の通ったディレクトリにダウンロード (clone)、

    Emacs で時の流れを感じる - Qiita
  • EmacsでWebサービスを開発して8ヶ月が経ちました - エムスリーテックブログ

    この記事はエムスリー Advent Calendar 2018 の16日目の記事です。 こんにちは、エンジニアリンググループ新卒1年目の青木です。クラウド電子カルテ「M3 DigiKar」の開発に携わっています。We are hiring!! 今回は私のチームが開発しているWebサービス「M3 DigiKar」の Emacs での開発方法を紹介します。 皆さんお馴染みのエディタ Emacs はじめに 共通設定 検索・補完・定義参照 company.el ivy.el & counsel.el & swiper.el dumb-jump.el Syntax Check & Lint flycheck.el Spell Check flyspell.el Visualize git-gutter-plus.el color-identifiers-mode.el rainbow-delimit

    EmacsでWebサービスを開発して8ヶ月が経ちました - エムスリーテックブログ
  • Emacsは便利なんだけど、もっと便利にしたいのでpackageを書いてみた件

    Slide for 東京Emacs勉強会 端午の節句 https://tokyo-emacs.connpass.com/event/128038/

    Emacsは便利なんだけど、もっと便利にしたいのでpackageを書いてみた件
  • 超クールな Emacs Package(俺的)20 選

    LT for 東京Emacsひなまつり https://tokyo-emacs.connpass.com/event/121603/

    超クールな Emacs Package(俺的)20 選
  • Emacsモダン化計画 -かわEmacs編- - Qiita

    EmacsJP Slackで話題に上がったEmacsモダン化計画という語感に触発され、Emacsひなまつりでそれっぽい話をすることにした。記事では、見た目中心の変更方法について紹介する。 ちなみに現在82パッケージ導入しているが、use-packageでフル遅延ロード、なにか遅ければデフォルトのプロファイラで原因を解析して修正しているのでEmacsでも起動も動作も早い(現在の起動時間は0.4秒)。 コードが読みやすいテーマ -- doom-emacs-themes(doom-dracula) Doom Emacsという(Evilユーザ向け)Spacemacs系のプロジェクトがあり、このDoom Emacsのために開発されたテーマ。 目立たせるものと、そうでないもののバランスが良ため、非常に気に入っている。Dracula公式のEmacsThemeもあるが、Doomとは微妙に色味が異なる。

    Emacsモダン化計画 -かわEmacs編- - Qiita
  • 2019年Emacs JPを再始動します

    新年あけましておめでとうございます。 さて、2018年はどんな年でしたでしょうか。みなさんには昨今のEmacsの様子は、どう映ったでしょうか。「安定」でしょうか。正直な感想として「停滞」でしょうか。あるいは、特に何も映らなかったかもしれません。 昨年2018年5月には、Emacs体の最新メジャーバージョンであるGNU Emacs 26.1がリリースされました。 MELPAにも日からの開発者が投稿したものもいくつも新たに収録されているほか、@10srさんのEditorConfig Emacsや、nim-modeのYuta Yamadaさん(@yuutayamada)、僭越ながら筆者(@zonuexe)のEmacs-PHPなど、世界中から利用されているLispパッケージには現在も日人が主体となって継続的に開発されているパッケージがいくつもあります。 2016年以降はAyanokoji T

    2019年Emacs JPを再始動します
  • 君は誰とEmacsる? (補完インターフェイス紹介篇) - Qiita

    Anything? それともIDO? 承前 Emacsの初期設定の補完インターフェイスは前方一致補完しかできないので、効率を上げるための代替手法を提案する。 具体的にはC-x C-f(find-file)とかC-x b(switch-to-buffer)、M-x(execute-extended-command)みたいなコマンドの操作性を改善できる。 注意 拡張パッケージをインストールする際にはpackage.el - Emacs JPとGetting Started - MELPAを参考にMELPAの設定をすること。 また、以下に紹介する「IDO」「Helm」「Counsel」「Anything」のどれかを選んで、設定は混在させない方が良い。 最初に比較表 | パッケージ名 | リポジトリ | 独断と偏見による立ち位置 | |----------------+--------------

    君は誰とEmacsる? (補完インターフェイス紹介篇) - Qiita
  • Emacsの補完と検索を超強化する - Qiita

    私が最初にEmacsを使ったときの感想は「IDEに比べて補完,検索が弱すぎる」でした この記事ではそんな思いを抱いたEmacserを対象として,Emacsの補完・検索をどうやって強化していくか紹介していきます (helmとprojectileは今回の記事では参照しないので,気になる方は「初心者〜初級者のためのEmacs-Helm事始め」などを参照ください) 注) 基的に私が使っているpackageの紹介になります コマンド補完 counsel Emacsで重要になってくるのがM-xで起動する各種コマンドの扱いです counselはivyというコマンド補完機能を用いて,いわゆる絞込検索を実現しています うろ覚えのコマンドであっても,絞込んでCtrl+n, Ctrl+pで選択できます ivy自体の設計コンセプトが「より効率的で,より小さく,よりシンプルで,よりスムーズに」なので拡張性が非常に

    Emacsの補完と検索を超強化する - Qiita
  • Emacsで現在見ている行を変更したPRを開けるようにした - $shibayu36->blog;

    このコードどうしてこうなってるのかという経緯を知りたい時、git blameなどのコマンドを利用することが多い。しかし、git blameだとその行を変更したcommitが分かるだけであり、経緯が結局分からないということがよくある。 そういう時にその行を変更したPRを開けるようにしたいなーと思って、いろいろやったところ、Emacsで現在見ている行を変更したPRを開けるようになったのでメモ。 特定のコミットが含まれるPull Requestを開くには 前段階として、特定のコミットが含まれるPull Requestを開くということをやってみる。これは既にいろいろやっている人がいて Commit Hash から、該当 Pull Request を見つける方法 - Qiita How to find pull-request by a commit sha - Pitr.ch Gitベースのコード

    Emacsで現在見ている行を変更したPRを開けるようにした - $shibayu36->blog;
  • Info: Info: An Introduction

    Info: An Introduction GNUプロジェクトは,オンラインマニュアルのほとんどをInfo書式(Info format)で配布していて,それはInfoリーダ(Info reader)を使用して読 むものです.あなたは今,これを読むために,おそらくInfoリーダを使用してい ます.

  • #16 Emacsと長く付き合っていくために (Software Design 2015年8月号掲載記事)

    Software Design連載記事を掲載します。 株式会社技術評論社の許可を得て掲載しています。 草稿なので細かい部分は実際の記事とは異なることがあります。 他の記事は左下にある「■雑誌連載中(全文公開)」から見られます。 ども、るびきちです。 ここ3ヶ月は基に立ち帰り、標準コマンドに光を当ててみました。 やはりさすがEmacsは奥が深く、標準コマンドにちょっと触れるだけでも3ヶ月かかってしまいました。 これまで当たり前に思ってきた標準コマンドの機能性を再発見できれば幸いです。 でも、標準コマンドで終わるEmacsではありません。 Emacsユーザは当然、Emacsを自分好みの色に染めたいものですよね。 個々のユーザの要望にとことん応えてくれるのがEmacsの魅力です。 Emacsは単なるテキストエディタではなく、テキストエディタの顔をしたLispマシンです。 Lispというプログラ

    #16 Emacsと長く付き合っていくために (Software Design 2015年8月号掲載記事)
  • abbrev

    [ホーム]-> [Emacs]-> [活用法]-> [abbrev] Abbrev (略称展開) 1. Abbrev とは 2. 動的略称展開 (Dynamic Abbrev) 2.1. 使い方 2.2. カスタマイズ 3. 静的略称展開 (Abbrev) 3.1. 設定 3.2. 略称の登録 3.3. 展開の仕方 3.4. 自動的な略称展開 3.5. 明示的な略称展開キーを使った展開 4. キーの交換について 1. Abbrev とは Abbrev とは要するに、略称展開です。 Emacs ファンの中には、この abbrev が便利だから離れられないのだという人も多いようです。 うまく使いこなせばかなりタイプ量が減らせることでしょう。 ただし、日語との相性が今一つなことと、日語の場合 IME の辞書登録でもある程度似たようなことが可能なこと (特に SKK の補完機能は使い勝手が良い

  • Emacs での テキストブラウザ eww を使えるレベルにする

    はじめに# 最近よくマックにいくのだけれども, ここがとても電波回線が悪い (@_@); ネットサーフィンをしてても, とてもストレスがたまる. このままだと, マックのせいでストレスから立ち直れなくなってしまうので なんとかしようと思った. テキストブラウザをつかえば, よりサクサクとネットを楽しめるのではとお もい, Emacs での テキストブラウザの eww をつかってみた. EWW とは# Emacs での テキストブラウザ. Emacs24.4 からデフォルトで Emacs にはいっている. https://bzr.savannah.gnu.org/lh/emacs/trunk/annotate/head:/lisp/net/eww.el Emacs Web Wowser Basics Config# KeyBindings# N (eww-next-url) P (eww-p

    Emacs での テキストブラウザ eww を使えるレベルにする
  • Emacs Lispでブログエンジン書いた

    このブログはEmacs Lispで書かれていて、CoreOSが入ったマシンにDockerコンテナとしてデプロイされ、動いてる。あなたがこのブログのページをロードする度に、Dockerコンテナ内で走っているEmacsがリクエストをハンドリングして、org-modeで書かれた記事ファイルをhtmlに変換し、用意されたviewに差し込み、レスポンスを返している。elnode というEmacsをウェブサーバー化するプロダクト見つけて、気持ちが高まってしまったのが動機。 記事はorg-modeで書けて、いい感じ。ソースコードは github.com/supermomonga/darui.io にあります。Emacs Lispによるウェブアプリケーション開発、ある程度知見が貯まったので次はSinatra風ウェブアプリケーション作って、その後ドッグフーディングしてちゃんとしたブログエンジンとして書きなお

  • Goプログラミングのための環境構築

    Author: syohex Published: 2013-09-26 Last Modified: 2020-07-01 GitHub Source: md 概要 Emacsでの Go言語をプログラミングする際の環境構築について示す. 事前準備 コード補完のために gocode, 定義元へのジャンプのために godefをインストールしておく 推奨パッケージ go-mode go-autocomplete or company-go go-eldoc これらのパッケージはすべて MELPAからインストールできる go-modeの各種コマンド(利用頻度が高いもの) go-import-add (Default: C-c C-a) 指定したパッケージの import文を追加する. godef-jump (Default: C-c C-j) 関数, インタフェース, 変数等の定義元にジャンプ

    Goプログラミングのための環境構築