« ^ »

Symdon Blog


  • golang orgmode hugo

    go-org

    このサイトはHugoを使って生成している。その内部ではOrgファイルをgo-org を使って処理している。go-orgはGoで実装されたOrgファイルを変換するため のツールだが、org-modeの機能全てをサポートしているわけではない。今回は #+INCLUDE タグが使えないことが問題となった。このタグは外部ファイルを 取り込んでエクスポートするためのタグで、ソースコードなどをコードブロッ クとして取り込む時に用いる。し ...

    所要時間: 約 1分, 作成: 2021/12/13, 更新: 2021/12/13


  • comment

    死ぬつもりはまったくないが遺書を書いた。いつか死ぬ準備を今からしようと思う。 参考 https://ja.wikipedia.org/wiki/%E3%83%A1%E3%83%A1%E3%83%B3%E3%83%88%E3%83%BB%E3%83%A2%E3%83%AA

    所要時間: 約 1分, 作成: 2021/12/9, 更新: 2021/12/9


  • emacs

    Emacsで^Mを表示させない

    改行文字がCRLFだと^Mが表示されてしまう場合、それを表示しないようにしたい。 以下を評価すると表示されなくなる。 (setq buffer-display-table (make-display-table)) (aset buffer-display-table ?\^M []) 参考 https://stackoverflow.com/questions/3048906/dont-display-m-characters-with-emacs

    所要時間: 約 1分, 作成: 2021/12/9, 更新: 2021/12/9


  • comment

    文章を書く訓練が足りないように思う。 少しずつ書く量を増やしていきたい。

    所要時間: 約 1分, 作成: 2021/12/9, 更新: 2021/12/9


  • comment

    axiosとaxios-retryでリトライ処理を行う

    main.mjs import axios from 'axios'; import axiosRetry from 'axios-retry'; var foo = null; axiosRetry( axios, { retries: 2, retryCondition: (error) => { return error.response.status === 429 || axiosRetry.isNetworkOrIdempotentRequestError(error); }, retryDelay: (retryCount, error) => { console.log("A"); if (error.response.status === 429 && 'retry-after' in error.response.headers) { console.log("B"); const retryAfter = parseInt(error.response.headers['retry-after']); console.log("C"); if (typeof(retryAfter) === 'number') { console.log("D"); return (retryAfter * 1000) + 1; } } console.log("DEFAULT"); return axiosRetry.exponentialDelay(retryCount, error); // return retryCount * 1000; // return axiosRetry.exponentialDelay * 2; }, }, ); try { const resp = await axios.get('http://localhost:8000/500'); console.log('OK'); console.log(resp.status); } catch { console.log('NG'); } // console.log(foo); // on console.log(foo); APIはapisproutで用意した。以下はapisprouの設定。 openapi: 3.0.0 info: version: 1.0.0 title: example paths: "/200": get: summary: testing responses: "200": description: bad content: application/json: schema: type: object properties: user_id: type: string example: 1234567 "/429": get: summary: testing responses: "429": description: bad headers: Retry-After: schema: type: string example: "2" content: application/json: schema: type: object properties: user_id: type: string example: 1 "/500": get: summary: testing responses: "500": description: bad content: application/json: schema: type: object ...

    所要時間: 約 1分, 作成: 2021/12/7, 更新: 2021/12/7


  • sqlfluff sql homebrew

    sqlfluffのHomebrew Formulaを書いた

    SQL Cookbook 第2版が出版されることになり、私は技術監修としてお声がかかった。それに伴ってSQLのフォーマッターを探していた。いくつかフォーマッターはある。その中でsqlfluffというSQLのフォーマッターの使用感が良かった。sqlfluffはPythonで実装されている。sqlfluffの公式ドキュメントにはpipを用いたインストール方法が記述されている。私はプロジェクトを跨いで使用するようなツールはH ...

    所要時間: 約 4分, 作成: 2021/12/1, 更新: 2021/12/1


  • comment

    change-case.elに届いたバグレポートの件、調査したけれど再現できなかった。とりあえず調査内容を記載した。 https://gist.github.com/TakesxiSximada/e8a10244aac6308de1323d1f6685658b#gistcomment-3977132

    所要時間: 約 1分, 作成: 2021/11/29, 更新: 2021/11/29


  • comment

    change-case.elにバグレポート1が届いていた。数ヶ月放置して しまったけどこれは嬉しい。nice packageって言われたのも嬉しかった。私に 興味を持ってくれる人はいないので、自分が作ったパッケージがちょっとでも 使ってもらって興味を持ってもらえたことがとても嬉しかった。調査して修正 したい。これからも世の中をほんのちょっとだけ良くしていきたい。 1 https://gist.github.com/TakesxiSximada/e8a10244aac6308de1323d1f6685658b#gistcomment-3783749

    所要時間: 約 1分, 作成: 2021/11/28, 更新: 2021/11/28


  • emacs markdown

    EmacsでGithub Flavored Markdownをリアルタイムプレビューする

    MarkdownをリアルタイムプレビューするためにGrip及びgrip-modeを試す。 Org-modeファイルも使えるため、今回はorg-modeを例とするが、基本的に使い 方は同じである。 Grip及びgrip-modeをインストールする grip-modeは内部でGripというツールを使用している。このGripがリアルタイ ムレンダリングの機能を提供している。GripはPythonで実装されているの ...

    所要時間: 約 2分, 作成: 2021/11/28, 更新: 2021/11/28


  • emacs

    How Emacs changed my life

    Emacs Advent Calendar 2020の11日目に投稿された。 とても素敵な文章で何度も読み返した。 自分自身を投影する。 https://qiita.com/sylx/items/46bc993471cd71980aa5 こっちの資料も何度も読んだ。 https://www.slideshare.net/yukihiro_matz/how-emacs-changed-my-life 両方とも素晴しかった。

    所要時間: 約 1分, 作成: 2021/11/27, 更新: 2021/11/27


  • advent-calendar

    2021年のAdvent Calendar

    毎年12月には良質な技術系記事が量産される。Advent Calendarという習わしがあるからだ。私も一時期は頑張って書いていたが、仕事に忙殺され、いつしか書くことをしなくなってしまった。それでも書かれた記事で興味のあるものは読んでいるし、楽しみにしている。2021年はどうしようかと考えたが、書く日を宣言することのプレッシャーに耐えられないので、特定のカレンダーに参加することはせず、自分用に作って ...

    所要時間: 約 1分, 作成: 2021/11/27, 更新: 2021/11/27


  • comment

    花をきれいと感じたり、朝焼けをきれいと感じたりするのはとても大切な心の 働きだ思う。ただこれらをきれいと感じなさいと言われることには疑問を感じる。

    所要時間: 約 1分, 作成: 2021/11/20, 更新: 2021/11/20


  • comment

    色々と考えが巡ったりまとまらなかったりする。 混乱することもあるし、新しいことを衝動的に始めたくなることもある。 しばしば激しく孤独感を感じて息苦しくなる。 そういう時、あれこれと考えても結局いつもたどり着くのは、 それなりの成果を得たいと思うなら、それなりの時間が必要で、 今取り組んでいることを全力でやること以外にできることはないということ。 だから今日も持っているタスクをしっかりこなして役目を果たそうと思 ...

    所要時間: 約 1分, 作成: 2021/11/19, 更新: 2021/11/19


  • comment

    毎日全力で仕事している。自分のことに集中できているのでとても良い。一人でいるとすごい孤独感を感じることあるけれどだいぶ耐えられるようになってきた。多分誰かといても、その時は寂しくないだけでまた一人になったら寂しくなるし、そんなもんだろうと考えるようになってきた。まあ、たまには誰かと飲みに行きたい気にもなるけど。 今やっていることは開発の仕事と書籍の仕事の2つ。 開発の仕事はとても順調で本当に手が足りな ...

    所要時間: 約 1分, 作成: 2021/11/15, 更新: 2021/11/15


  • python poetry

    Poetryでパッケージを管理する

    poetryを用いたパッケージの管理方法にシフトするためにいくつかの手順を示す。 この内容はpoetryのドキュメントの必要な部分をかいつまんだものとなっている。 パッケージをインストールする venvをpoetryで新たに作成してインストールする poetry install インストール後のpythonを利用するには poetry run コマンドを利用する。 poetry run python 既存の環境を利用する poetryによって環境を作ることなくpoetryを利用する。 ...

    所要時間: 約 2分, 作成: 2021/11/13, 更新: 2021/11/13


  • emacs

    Emacsのorg-modeのアーカイブ機能

    org-modeには2種類のアーカイブ機能がある。これらの関数は lisp/org/org-archive.el.gz に実装されている。 アーカイブされたorg-todoの表示をグレーアウトする :ARCHIVE: タグを追加することで表示をグレーアウトする。 org-modeのセクションにポイントを移動し org-archive-set-tag を呼び出 すことで :ARCHIVE: タグを追加できる。 org-todo自体をアーカイブ用のファイルに移動する もう一つはアーカイブ用のファイルにsubtreeごと移動させる。こちらは or ...

    所要時間: 約 1分, 作成: 2021/10/24, 更新: 2021/10/24


  • django

    DjangoのJSONField事情

    Django3ではJSONFieldがサポートされた。Django2までは、いろいろな JSONFieldがライブラリとして実装されており挙動とサポート範囲が異なって いた。それぞれのJSONFieldがMySQL上ではどのように定義されるのかを確認し た。 検証環境 ソフトウェア バージョン Python Python3.6 Database MySQL 5.7 Django2 Django==2.2.13 django-jsonfield==1.4.0 mysqlclient==1.3.13 django-jsonfield-backport==1.0.4 requirements.txt Django3 Django==3.2.8 mysqlclient==2.0.3 django-jsonfield==1.4.1 django-jsonfield-backport==1.0.4 requirements.txt model Fooというモデルを定義し、それぞれのJSONFieldを用いたカラムを定義した。 ...

    所要時間: 約 2分, 作成: 2021/10/21, 更新: 2021/10/21


  • comment

    今日は朝から体調が悪かった。11時頃には少しもどったから、仕事を進められ た。午後から2件打ち合わせをすませた。その後少し休んでからまた仕事をし た。 打ち合わせの時に話をしていたら、話す前にはその話はしてなかったように思 えたんだけれど、話しているうちにその内容は先週話したような気がした。記 憶が抜け落ちていたりすることが多くなって支障も出てきている。

    所要時間: 約 1分, 作成: 2021/10/14, 更新: 2021/10/14


  • comment

    今日もたくさん仕事してしまった。 複数の作業を並行して実施している。 とても効率が悪い。こういう時は専業したくなる。 ただ仕事がなるなるのは怖いので、分散せざるをえない。 もう少し進め方を工夫して、他の人に頼れるところは頼りたい。

    所要時間: 約 1分, 作成: 2021/10/10, 更新: 2021/10/10


  • comment

    gaドメインを失効した

    うっかりしていた 忙しさにかまけていた 気付いたときには手遅れだった そこにはもう何もなかった ということでgaドメインを失効してしまいました。 この機会にhttps://blog.symdon.infoに移行します。 というかしました(小声)。 追記 (2022-01-01) しかも跡地には危険な香りのあるアダルトサイトが爆誕していました。

    所要時間: 約 1分, 作成: 2021/10/9, 更新: 2021/10/9


  • python

    syaml-2.0をreleaseした

    かなり前に作っていたsyamlというツールを保守して2.0をreleaseした。 syamlはmako template + 環境変数という単純な構成で作っていてYAMLの中で 環境変数を利用できる。パッケージ作成の状況がかなり変わっていたので setup.pyを廃止してsetup.cfgに設定を移しpyproject.tomlを追加した。他に も改善できるところが結構あったので合わせて修正した。 パッケージング方法の刷新 se ...

    所要時間: 約 1分, 作成: 2021/9/25, 更新: 2021/9/25


  • cpu x86

    8086

    16ビットマイクロプロセッサであるIntel 8086の各種レジスタと命令セットをまとめた。 レジスタ 汎用 Register value(H/L) 日本語 用途 AX (AH/AL) アキュムレータ 算術演算操作の結果が格納される BX (BH/BL) ベースレジスタ セグメントモードでのDSに格納されたデータを指し示すために使用される CX (CH/CL) カウンタレジスタ シフトローテート命令とループ命令に使用される DX (DH/DL) データレジスタ 算術演算操作とI/O操作に使用される インデックス Register value 日本語 用途 SI ソー ...

    所要時間: 約 3分, 作成: 2021/9/17, 更新: 2021/9/17


  • mysql

    MySQLのテーブルのメールアドレスをマスクする

    乱数を使ってメールアドレスをマスクする。 UPDATE testing_table SET email=CONCAT(RAND(), "@example.com") WHERE email <> "[email protected]"; [email protected] は除外した。

    所要時間: 約 1分, 作成: 2021/9/10, 更新: 2021/9/10


  • comment

    SNSとの関わりとこれからについて

    ここ数年でネガティブな感情が増えた。最近特に、それも人間関係についてだ。このブログは技術の内容がほとんどなので内容的には全くそぐわないかもしれないが、特に書くジャンルを固定しているわけではない。だから今日はこのことについて書こうと思う。 SNS ここ数年の間、私を精神的に追い詰められることが多かった。その理由は、私を貶めるような内容を身近な人がSNSに投稿していることだった。知っている人からみれば誰のこと ...

    所要時間: 約 3分, 作成: 2021/9/7, 更新: 2021/9/7


  • comment

    https://www.symdon.info への海外からのアクセスが増えてきた。 英語化したかいがあるし、とても嬉しい。

    所要時間: 約 1分, 作成: 2021/9/7, 更新: 2021/9/7


  • comment

    ノイマン型コンピュータ

    コンピュータについてのハードウェアのアーキテクチャの一つ。 特にプログラム内蔵方式のデジタルコンピュータで次のような構成を取るもの をノイマン型コンピュータという。 +-----------+ バス +------------------+ | 計算装置 |---------| アドレス付き | | (CPUなど) | | メモリ | +-----------+ | (命令とデータを | | 区別せずに保持) | +------------------+ 参考 https://ja.wikipedia.org/wiki/%E3%83%8E%E3%82%A4%E3%83%9E%E3%83%B3%E5%9E%8B https://ja.wikipedia.org/wiki/%E3%83%87%E3%83%BC%E3%82%BF%E3%83%95%E3%83%AD%E3%83%BC#%E3%83%8F%E3%83%BC%E3%83%89%E3%82%A6%E3%82%A7%E3%82%A2%E3%82%A2%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%81%E3%83%A3

    所要時間: 約 1分, 作成: 2021/9/7, 更新: 2021/9/7


  • database db2 mysql oracle postgresql sqlserver

    各種RDBMSのDUALテーブルの扱い

    DUALテーブルは1列のみのテーブルだ。 OracleではFROM句を省略できないため参照するテーブルがない場合 FROM DUAL のようにDUALテーブルを指定する。 このDUALテーブルの取り扱いはRDBMSによって異なり、定義されていないものもある。 そこでDUALテーブルの扱いを各種RDBMS毎にまとめた。 DB FROM句の省略 DUALテーブル DB2 できない あるがSYSIBM配下に存在する。DUALだけで名前解決したい ...

    所要時間: 約 1分, 作成: 2021/8/29, 更新: 2021/8/29


  • emacs

    set-fontset-fontのdocstringの日本語訳

    Modify fontset NAME to use FONT-SPEC for TARGET characters. FONT-SPECを使うこと フォントセットNAMEを変更する TARGET文字列のために TARGETで指定した文字にFONT-SPECで指定したフォントスペック FONT-SPECをターゲットキャラクタに使用するようにフォントセット NAME を変更します。 フォントセットNAMEがFONT-SPECを TARGET文字にFONT-SPECを使用するようにフォントセットNAMEを変更します。 NAME is a ...

    所要時間: 約 3分, 作成: 2021/8/25, 更新: 2021/8/25


  • comment

    今日は朝から4つもPull requestを作成してしまった。 とりあえず午前中の作業はここまで。

    所要時間: 約 1分, 作成: 2021/8/21, 更新: 2021/8/21


  • comment

    技術的なアイディアをためておいてそのアイディアについて評価できるようにしたい。ありがたいことに素振りしまくったから色んなものをさっと作れるようになったけれど,、その分すぐさま取り掛かってしまってそのアイディアが本当に良いものなのかの評価がおろそかになっている気がする。ある程度揉まれた段階で作り出さないと良いものはできない。

    所要時間: 約 1分, 作成: 2021/8/21, 更新: 2021/8/21


  • comment

    責任について

    責任という言葉がどうもわからない。 どうすれば責任を果たしたと言えるのか。 自分に責任があるのか。 責任とは何のことなのか。 だから言葉から整理することにした。 責任 責任は遂行的責任、立場的責任、賠償的責任という3つの要素に分解できる。 遂行的責任 - Responsibility 仕事を最後までやり遂げるために以下を行うこと。 労力を払う。 苦痛に耐える。 やると決めたことをやり遂げるようにベストを尽くすこと。 遂行責任を果たすためにはできないこ ...

    所要時間: 約 1分, 作成: 2021/8/16, 更新: 2021/8/16


  • comment

    symdon.infoの多言語化の仕組みはある程度できてきた。 Python, PHPおよびGNU gettextをうまく使って翻訳ファイルの生成などはできるようになった。 足回りはGNU autotoolsをうまく利用できたと思う。 この辺の組み方も余裕があれば解説したいが、それは余裕と要望があればすることにする。 今は英語をベースにして日本語に翻訳したけれど、日本語話者だから日本語ベースにしようかなと思う。 翻訳結果のク ...

    所要時間: 約 1分, 作成: 2021/8/15, 更新: 2021/8/15


  • twitter html sns ogp facebook

    OGPを設定する

    OGPの設定ができていないのでここを確認しながら調整を行う。 https://gotohayato.com/content/500/ 色々と試行錯誤して何をどのように設定すればよいのか理解してきたのでまとめておく。 OGP SNSなどで投稿内のURLを画像や説明付きの表示にするにはOGPに則ったマークアップをHTML内に記述します。 https://ogp.me/ サンプルとして作成したOGPの設定を掲載しておく。 <meta property="og:description" content="Symdon's works, archiving, and also Python, Emacs and Freee Software about." /> <meta property="og:image" content="https://www.symdon.info/_assets/ogp/kuma3.jpg" /> <meta property="og:site_name" content="Hello!! I am symdon" /> <meta property="og:title" content="Hello!! I am symdon." /> <meta property="og:type" content="website" /> <meta property="og:updated_time" content="2021-08-10T14:29:54+09:00" /> <meta property="og:url" content="https://www.symdon.info" /> 画像サ ...

    所要時間: 約 1分, 作成: 2021/8/11, 更新: 2021/8/11


  • web

    新しく個人用のサイトを作った

    https://kenreitz.org/ のwebsiteを見ていたら個人用のサイトが欲しくなっ てきた。gaドメインでも良かったのだがdomain自体を失効しいつ消滅するかわ からない代物であるので新しくdomainを購入するところから始めた。ゼロから の再出発だ。 https://www.symdon.info/ ページ自体はシンプルな構成にしてある。index.htmlが一枚とcssが一枚だけ だ。無駄なfrontendの技術は盛り込まないつもりだ。日頃からあれは本来不要 なものと考えてい ...

    所要時間: 約 1分, 作成: 2021/8/8, 更新: 2021/8/8


  • emacs orgmode

    Emacsのorg-modeのorg-babel-load-fileで出力されるファイル名を指定したい

    TL;DR Emacsの設定をOrg Modeで記述していたが、設定の変更でファイルを開くときにorg-babel-load-fileで出力されたファイルが選択の上部に表示されていた。 org-babel-load-fileはorg-babel-tangleを用いてファイルを出力しそれを読み込んでいたが、そのファイル名を外から変更することは難しい実装となっていた。 org-babel-load-fileを用いず直 ...

    所要時間: 約 3分, 作成: 2021/8/7, 更新: 2021/8/7


  • emacs

    モードラインは本当に必要なのか

    特に何の疑問も持たずデフォルトで表示されるからモードラインはそのままに してきた。モードラインは1行分の領域を消費する。これは本当に必要なんだ ろうか。いらない気がする。ということで非表示にしてしばらく過ごしてみる。 (setq-default mode-line-format nil)

    所要時間: 約 1分, 作成: 2021/8/6, 更新: 2021/8/6


  • comment

    もう、無理かもしれない

    所要時間: 約 1分, 作成: 2021/8/2, 更新: 2021/8/2


  • comment

    consに想いを馳せる

    日曜日の朝なのでconsに考えを巡らせてみる。 シンプルなcons cell '("A" . "B") Addr Value Type Cell 1 65 char CELL1 2 3 CELL* CELL1 3 66 char CELL2 4 NULL CELL* CELL2 5 6 連結リスト '("A" "B" "C") '("A" . ("B" . ("C" . nil))) Addr Value Type Cell 1 65 char CELL1 2 3 CELL* CELL1 3 66 char CELL2 4 5 CELL* CELL2 5 67 char CELL3 6 NULL CELL* CELL3 7 8

    所要時間: 約 1分, 作成: 2021/8/1, 更新: 2021/8/1


  • emacs

    execute-extended-commandのコメントの翻訳

    lisp/simple.el.gz:2124 Based on Fexecute_extended_command in keyboard.c of Emacs. Aaron S. Hawley <aaron.s.hawley(at)gmail.com> 2009-08-24 Emacsのkeyboard.cのFexecute_extended_commandに基づいています。 Read a command name, then read the arguments and call the command. To pass a prefix argument to the command you are invoking, give a prefix argument to `execute-extended-command'. コマンド名を読み取り、次に引数を読み取り、コマンドを呼び出します。呼び 出すコマンドにプレフィックス引数を渡すには、 `execute-extended-command 'にプレフィックス引数を指定します。

    所要時間: 約 1分, 作成: 2021/7/31, 更新: 2021/7/31


  • emacs

    emacs/src/keyboard.cのoverriding-local-mapの翻訳

    Keymap that replaces (overrides) local keymaps. If this variable is non-nil, Emacs looks up key bindings in this keymap INSTEAD OF the keymap char property, minor mode maps, and the buffer's local map. Hence, the only active keymaps would be `overriding-terminal-local-map', this keymap, and `global-keymap', in order of precedence. emacs/src/keyboard.cのoverriding-local-mapの説明 ローカルキーマップを置き換える(オーバーライドする)キーマップ。この変 数がnil以外の場合、Emacsはこのキーマップcharプロパティ、マイナーモード マップ、およびバッファーのローカルマップの代わりにこのキーマッ ...

    所要時間: 約 1分, 作成: 2021/7/29, 更新: 2021/7/29


  • emacs

    org-clockのカレントタスクを取得する

    org-clock-current-taskで取得できる。これは現在clock-inしているタスクの テキスト属性付きの文字列である。 このタスクに設定されたカテゴリを取得するにはget-text-propertyを使う。 (get-text-property 1 'effort org-clock-current-task) 評価すると設定されているテキスト属性の値が返される。 21

    所要時間: 約 1分, 作成: 2021/7/29, 更新: 2021/7/29


  • comment

    強く孤独を感じるが、毎日全力を出し切れている。自分が果たすべき役割に集 中できているし、姿勢としては悪くない。仕事では満足の行く結果を得られて いる。このままこの状態を続ける。

    所要時間: 約 1分, 作成: 2021/7/25, 更新: 2021/7/25


  • emacs company

    companyのbackend

    あらゆる入力に対し、foo bar bazの3つの候補を表示するシンプルなバックエンドを作成する。 (require 'cl-lib) (require 'company) (defvar company-foo-enable nil) (defvar company-foo-debug nil) (defun company-foo (command &optional arg &rest ignored) "`company-mode` completion backend for simple. Suggest foo, bar and baz. " (interactive (list 'interactive)) (when company-foo-debug (message "command=%s arg=%s ignored=%s" command arg ignored)) (cl-case command (interactive (company-begin-backend 'company-foo)) (prefix (and company-foo-enable "aaa")) (candidates (list "foo" "bar" "baz" )))) (add-to-list 'company-backends #'company-foo) company-foo-enableをtに設定すると補完が表示される。 (setq company-foo-enable nil) `company-backends'のdocstringに記載されている説明がが最もよく分かる。

    所要時間: 約 1分, 作成: 2021/7/25, 更新: 2021/7/25


  • openapi python openapi-core

    分割したOpenAPIのYAML形式のドキュメントをopenapi-coreを用いて読み込むことができるか?

    openapi-coreで分割されたファイルを利用できるのかを確認したところできないことがわかった。

    所要時間: 約 3分, 作成: 2021/7/17, 更新: 2021/7/17


  • c言語

    スタックとヒープ

    ローカル変数はスタック領域に確保される。一方malloc()で確保したメモリは ヒープ領域に確保される。ヒープ領域に確保したメモリはfreeで開放する必要 がある。 #include <stdlib.h> #include <stdio.h> int main(void) { char foo; foo = 0; char *bar; bar = (char *) malloc(1); *bar = 0; free(bar); printf("OK\n"); return 0; }

    所要時間: 約 1分, 作成: 2021/7/15, 更新: 2021/7/15


  • emacs lisp

    リージョンのテキストをURL Encodeしてkill-ringバッファに保存する

    (require 'url-util) (defun our-copy-region-url-encode () (interactive) (kill-new (url-hexify-string (buffer-substring-no-properties (region-beginning) (region-end)))))

    所要時間: 約 1分, 作成: 2021/7/15, 更新: 2021/7/15


  • sql database

    データベースをコピーする

    作成済みのデータベースをもとに新しいデータベースを作成する方法を試した。

    所要時間: 約 1分, 作成: 2021/7/7, 更新: 2021/7/7


  • rustlang 制御コード

    Rustで制御コードでspinする

    use std::io; use std::io::{Write}; use std::{thread, time}; fn main () { let output = io::stdout(); let ten_millis = time::Duration::from_millis(1); loop { let mut handle = output.lock(); handle.write(b"|").unwrap(); thread::sleep(ten_millis); handle.write(b"\x1b[1D").unwrap(); handle.write(b"/").unwrap(); thread::sleep(ten_millis); handle.write(b"\x1b[1D").unwrap(); handle.write(b"-").unwrap(); thread::sleep(ten_millis); handle.write(b"\x1b[1D").unwrap(); handle.write(b"\\").unwrap(); thread::sleep(ten_millis); handle.write(b"\x1b[1D").unwrap(); } }

    所要時間: 約 1分, 作成: 2021/6/25, 更新: 2021/6/25


  • 制御コード

    制御コード

    Spin b"|" b"\e[nD" b"/" b"-" b"\" 参考 https://en.wikipedia.org/wiki/ANSI_escape_code https://en.wikipedia.org/wiki/C0_and_C1_control_codes https://www.mm2d.net/main/prog/c/console-02.html https://qiita.com/PruneMazui/items/8a023347772620025ad6 http://7ujm.net/etc/esc.html

    所要時間: 約 1分, 作成: 2021/6/25, 更新: 2021/6/25


  • rustlang

    Rustで標準入力を取り扱う

    実装 use std::io; use std::io::BufRead; fn main() { let stdin = io::stdin(); for line_result in stdin.lock().lines() { println!("DATA: {:?}", line_result); } } main.rs ビルド $ rustc main.rs 実行 bash-5.1$ echo aaaaaaaaaaaaaa | ./main DATA: Ok("aaaaaaaaaaaaaa")

    所要時間: 約 1分, 作成: 2021/6/24, 更新: 2021/6/24


©TakesxiSximada