From 4d0d6c9b6094099d60a264cf5fe54db3ae0c8ae2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=AB=8F=E8=A8=AA=E5=AD=90?= Date: Thu, 1 Feb 2024 17:17:53 +0900 Subject: [PATCH] =?UTF-8?q?=E3=80=90Neovim=E3=80=91=E3=83=86=E3=83=B3?= =?UTF-8?q?=E3=83=97=E3=83=AC=E3=83=BC=E3=83=88=E3=81=A8=E4=BD=9C=E3=82=8A?= =?UTF-8?q?=E6=96=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gemini/blog.atom | 146 ++++++++++++++++++++------- gemini/blog.gmi | 1 + gemini/blog/neovim-code-template.gmi | 112 ++++++++++++++++++++ gemini/twtxt.txt | 1 + src/blog/neovim-code-template.md | 112 ++++++++++++++++++++ 5 files changed, 335 insertions(+), 37 deletions(-) create mode 100644 gemini/blog/neovim-code-template.gmi create mode 100644 src/blog/neovim-code-template.md diff --git a/gemini/blog.atom b/gemini/blog.atom index 0e0e8ce..3ad5afc 100644 --- a/gemini/blog.atom +++ b/gemini/blog.atom @@ -3,13 +3,120 @@ gemini://technicalsuwako.moe テクニカル諏訪子 - 2024-01-30T00:00:00Z + 2024-01-31T00:00:00Z テクニカル諏訪子 + + blog/neovim-code-template.gmi + + 【Neovim】テンプレートと作り方 + 2024-01-31T00:00:00Z + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +<p><a href="/blog/zig-gengo-1.xhtml">Zigの使い方第1部を投稿した後、この言語を辞めました。</a><br /> +理由は自由にフォーマット出来なかった事です。<br /> +しかし、解決方法を見つけましたが、それが結構面倒くさいと思います:</p> +<pre><code lang=""><span style="color:#080;font-style:italic">// zig fmt: off +</span><span style="color:#080;font-style:italic">// vim: set ts=2 sts=2 sw=2 et: +</span></code></pre><p>各「.zig」ファイルで上記のコメントを自分で貼る事が必要為、「neovimは自動で追加されたら良いなぁ」と思ったら、やっぱりそれが可能です!</p> +<h2 id="confignviminitlua">~/.config/nvim/init.lua</h2> +<pre><code lang="">vim.api.nvim_exec(<span style="color:#b44">[[ +</span><span style="color:#b44"> autocmd BufNewFile *.zig 0r ~/.config/nvim/template.zig +</span><span style="color:#b44">]]</span>, <span style="color:#a2f;font-weight:bold">false</span>) +</code></pre><h2 id="confignvimtemplatezig">~/.config/nvim/template.zig</h2> +<pre><code lang=""><span style="color:#080;font-style:italic">// zig fmt: off +</span><span style="color:#080;font-style:italic">// vim: set ts=2 sts=2 sw=2 et: +</span><span style="color:#080;font-style:italic"></span><span style="color:#a2f;font-weight:bold">const</span><span style="color:#bbb"> </span>std<span style="color:#bbb"> </span><span style="color:#666">=</span><span style="color:#bbb"> </span><span style="color:#a2f">@import</span>(<span style="color:#b44">&#34;std&#34;</span>);<span style="color:#bbb"> +</span><span style="color:#bbb"> +</span></code></pre><p>それで、毎回「<code lang="">nvim ほげほげ.zig</code>」で使って新しい「.zig」ファイルを作ったら、自動で上記の行列を追加されます。<br /> +これを好みでしたので、他の言語のテンプレートを作りました。</p> +<h2 id="confignviminitlua-1">~/.config/nvim/init.lua</h2> +<pre><code lang=""><span style="color:#080;font-style:italic">-- テンプレート</span> +vim.api.nvim_exec(<span style="color:#b44">[[ +</span><span style="color:#b44"> autocmd BufNewFile *.c 0r ~/.config/nvim/template.c +</span><span style="color:#b44"> autocmd BufNewFile *.cc 0r ~/.config/nvim/template.cc +</span><span style="color:#b44"> autocmd BufNewFile *.h 0r ~/.config/nvim/template.h +</span><span style="color:#b44"> autocmd BufNewFile *.hh 0r ~/.config/nvim/template.hh +</span><span style="color:#b44"> autocmd BufNewFile *.go 0r ~/.config/nvim/template.go +</span><span style="color:#b44"> autocmd BufNewFile *.md 0r ~/.config/nvim/template.md +</span><span style="color:#b44"> autocmd BufNewFile *.zig 0r ~/.config/nvim/template.zig +</span><span style="color:#b44"> autocmd BufNewFile *.php 0r ~/.config/nvim/template.php +</span><span style="color:#b44">]]</span>, <span style="color:#a2f;font-weight:bold">false</span>) +</code></pre><h3 id="templatec">template.c</h3> +<pre><code lang=""><span style="color:#080">#include</span> <span style="color:#080">&lt;stdio.h&gt;</span><span style="color:#080"> +</span><span style="color:#080"></span> +</code></pre><h3 id="templatecc">template.cc</h3> +<pre><code lang=""><span style="color:#080">#include</span> <span style="color:#080">&lt;iostream&gt;</span><span style="color:#080"> +</span><span style="color:#080"></span> +</code></pre><h3 id="templateh">template.h</h3> +<pre><code lang=""><span style="color:#080">#ifndef _H +</span><span style="color:#080">#define _H +</span><span style="color:#080"></span> + + +<span style="color:#080">#endif +</span></code></pre><h3 id="templatehh">template.hh</h3> +<pre><code lang=""><span style="color:#080">#ifndef _HH +</span><span style="color:#080">#define _HH +</span><span style="color:#080"></span> +<span style="color:#a2f;font-weight:bold">class</span> <span style="color:#00f">i</span> { + <span style="color:#a2f;font-weight:bold">public</span><span style="color:#666">:</span> + + <span style="color:#a2f;font-weight:bold">private</span><span style="color:#666">:</span> + +}; + +<span style="color:#080">#endif +</span></code></pre><h3 id="templatego">template.go</h3> +<pre><code lang=""><span style="color:#a2f;font-weight:bold">package</span> main + +<span style="color:#a2f;font-weight:bold">import</span> ( +) + +</code></pre><h3 id="templatephp">template.php</h3> +<pre><code lang=""><span style="color:#666">&lt;?</span>php + +<span style="color:#080">?&gt;</span><span style=""> +</span></code></pre><p>以上</p> + + + + + blog/freebsd-nas-auto-backup.gmi @@ -31,7 +138,7 @@ -<p><a href="/blog/digital-autonomy-076video-hosting.gmi">先月は「076動画ホスティングの解決策」という投稿を書きました。</a><br /> +<p><a href="/blog/digital-autonomy-076video-hosting.xhtml">先月は「076動画ホスティングの解決策」という投稿を書きました。</a><br /> 先週の週末、このNASに4 TiBのSSDを追加しましたので、それによりGitlerと076動画のストレージ容量が増大出来ました。<br /> でも、バックアップならどうすれば良いですか?<br /> 今回はこれを解決すると思いますが、ちゃんと理解するには、まずは「076動画ホスティングの解決策」をご覧下さい。</p> @@ -358,40 +465,5 @@ Linux向けウィルスも存在しますが、その数は格段に少ないで - - blog/byobu-52.gmi - - 【076】byobu 5.2登場 - 2023-12-12T00:00:00Z - - - - - - - - - - - - - - - - -<h2 id="heading">変更</h2> -<ul> -<li>今度から、テクニカル諏訪子ちゃんは更新します。</li> -<li>メモリ、ディスク、CPU温度、及びCPUプロセスがLinux、OpenBSD、及びFreeBSDに対応する様にしました。</li> -<li>「.byobu」→「.config/byobu」、「.byoburc」→「.config/byoburc」</li> -</ul> -<h2 id="heading-1">ソースコード</h2> -<p><a href="https://gitler.moe/suwako/byobu">Gitler</a></p> -<p>以上</p> - - - - - diff --git a/gemini/blog.gmi b/gemini/blog.gmi index 35ea786..3623360 100644 --- a/gemini/blog.gmi +++ b/gemini/blog.gmi @@ -2,6 +2,7 @@ # 記事一覧 +=> /blog/neovim-code-template.gmi 2024年01月31日 【Neovim】テンプレートと作り方 => /blog/freebsd-nas-auto-backup.gmi 2024年01月30日 【FreeBSD】簡単にNASの自動的にバックアップする方法 => /blog/rice-productive.gmi 2024年01月04日 【プログラミング】生産力を増大する方法 => /blog/anti-virus-dangerous.gmi 2023年12月25日 【セキュリティ】ウィルス対策ソフトは危険 diff --git a/gemini/blog/neovim-code-template.gmi b/gemini/blog/neovim-code-template.gmi new file mode 100644 index 0000000..e970b4b --- /dev/null +++ b/gemini/blog/neovim-code-template.gmi @@ -0,0 +1,112 @@ +=> /blog.gmi ブログ一覧へ + +#【Neovim】テンプレートと作り方 +投稿日:2024-01-31 + +=> /blog/zig-gengo-1.gmi Zigの使い方第1部を投稿した後、この言語を辞めました。 +理由は自由にフォーマット出来なかった事です。 +しかし、解決方法を見つけましたが、それが結構面倒くさいと思います: + +```zig +// zig fmt: off +// vim: set ts=2 sts=2 sw=2 et: +``` + +各「.zig」ファイルで上記のコメントを自分で貼る事が必要為、「neovimは自動で追加されたら良いなぁ」と思ったら、やっぱりそれが可能です! + +## ~/.config/nvim/init.lua + +```lua +vim.api.nvim_exec([[ + autocmd BufNewFile *.zig 0r ~/.config/nvim/template.zig +]], false) +``` + +## ~/.config/nvim/template.zig + +```zig +// zig fmt: off +// vim: set ts=2 sts=2 sw=2 et: +const std = @import("std"); + +``` + +それで、毎回「`nvim ほげほげ.zig`」で使って新しい「.zig」ファイルを作ったら、自動で上記の行列を追加されます。 +これを好みでしたので、他の言語のテンプレートを作りました。 + +## ~/.config/nvim/init.lua + +```lua +-- テンプレート +vim.api.nvim_exec([[ + autocmd BufNewFile *.c 0r ~/.config/nvim/template.c + autocmd BufNewFile *.cc 0r ~/.config/nvim/template.cc + autocmd BufNewFile *.h 0r ~/.config/nvim/template.h + autocmd BufNewFile *.hh 0r ~/.config/nvim/template.hh + autocmd BufNewFile *.go 0r ~/.config/nvim/template.go + autocmd BufNewFile *.md 0r ~/.config/nvim/template.md + autocmd BufNewFile *.zig 0r ~/.config/nvim/template.zig + autocmd BufNewFile *.php 0r ~/.config/nvim/template.php +]], false) +``` + +### template.c + +```c +#include + +``` + +### template.cc + +```cpp +#include + +``` + +### template.h + +```c +#ifndef _H +#define _H + + + +#endif +``` + +### template.hh + +```cpp +#ifndef _HH +#define _HH + +class i { + public: + + private: + +}; + +#endif +``` + +### template.go + +```go +package main + +import ( +) + +``` + +### template.php + +```php + +``` + +以上 diff --git a/gemini/twtxt.txt b/gemini/twtxt.txt index 519bf73..bd8b619 100644 --- a/gemini/twtxt.txt +++ b/gemini/twtxt.txt @@ -3,6 +3,7 @@ # avatar = gemini://076.moe/static/suwako.jpg # description = テクニカル諏訪子様のtwtxtフィード # link = ホームページ gemini://technicalsuwako.moe +2024-01-31T00:00:00Z09:00 【Neovim】テンプレートと作り方 - gemini://technicalsuwako.moe/blog/neovim-code-template.gmi 2024-01-30T00:00:00Z09:00 【FreeBSD】簡単にNASの自動的にバックアップする方法 - gemini://technicalsuwako.moe/blog/freebsd-nas-auto-backup.gmi 2024-01-04T00:00:00Z09:00 【プログラミング】生産力を増大する方法 - gemini://technicalsuwako.moe/blog/rice-productive.gmi 2023-12-25T00:00:00Z09:00 【セキュリティ】ウィルス対策ソフトは危険 - gemini://technicalsuwako.moe/blog/anti-virus-dangerous.gmi diff --git a/src/blog/neovim-code-template.md b/src/blog/neovim-code-template.md new file mode 100644 index 0000000..8fac1a5 --- /dev/null +++ b/src/blog/neovim-code-template.md @@ -0,0 +1,112 @@ +title: 【Neovim】テンプレートと作り方 +author: 凜 +date: 2024-01-31 +tags: jp,blog,neovim,開発,プログラミング,linux,bsd,freebsd,openbsd,zig,c言語,php,go言語 +---- +[Zigの使い方第1部を投稿した後、この言語を辞めました。](/blog/zig-gengo-1.xhtml)\ +理由は自由にフォーマット出来なかった事です。\ +しかし、解決方法を見つけましたが、それが結構面倒くさいと思います: + +```zig +// zig fmt: off +// vim: set ts=2 sts=2 sw=2 et: +``` + +各「.zig」ファイルで上記のコメントを自分で貼る事が必要為、「neovimは自動で追加されたら良いなぁ」と思ったら、やっぱりそれが可能です! + +## ~/.config/nvim/init.lua + +```lua +vim.api.nvim_exec([[ + autocmd BufNewFile *.zig 0r ~/.config/nvim/template.zig +]], false) +``` + +## ~/.config/nvim/template.zig + +```zig +// zig fmt: off +// vim: set ts=2 sts=2 sw=2 et: +const std = @import("std"); + +``` + +それで、毎回「`nvim ほげほげ.zig`」で使って新しい「.zig」ファイルを作ったら、自動で上記の行列を追加されます。\ +これを好みでしたので、他の言語のテンプレートを作りました。 + +## ~/.config/nvim/init.lua + +```lua +-- テンプレート +vim.api.nvim_exec([[ + autocmd BufNewFile *.c 0r ~/.config/nvim/template.c + autocmd BufNewFile *.cc 0r ~/.config/nvim/template.cc + autocmd BufNewFile *.h 0r ~/.config/nvim/template.h + autocmd BufNewFile *.hh 0r ~/.config/nvim/template.hh + autocmd BufNewFile *.go 0r ~/.config/nvim/template.go + autocmd BufNewFile *.md 0r ~/.config/nvim/template.md + autocmd BufNewFile *.zig 0r ~/.config/nvim/template.zig + autocmd BufNewFile *.php 0r ~/.config/nvim/template.php +]], false) +``` + +### template.c + +```c +#include + +``` + +### template.cc + +```cpp +#include + +``` + +### template.h + +```c +#ifndef _H +#define _H + + + +#endif +``` + +### template.hh + +```cpp +#ifndef _HH +#define _HH + +class i { + public: + + private: + +}; + +#endif +``` + +### template.go + +```go +package main + +import ( +) + +``` + +### template.php + +```php + +``` + +以上