tabula rasa

白紙

【備忘録】私本管理Plusを移動する

PCの買い替えに伴い私本管理Plusも移動したかったが、ディレクトリをそのままコピーするだけではダメだったので備忘録として残しておく。

こんなのが出てくる

フォルダを移動する

shihon.exeの入っているフォルダ(デフォルトの名前はたぶん"私本管理Plus")を、移動したいところにそのままコピーする

データフォルダの変更

"私本管理Plus\temp\Setting.ini"をメモ帳などで開き、[Data]の部分の"Dir="の後を、移動先の"私本管理Plus\data"フォルダに変更する。

ここを書き換える

これだけでも起動するが、"私本管理Plus\DirList.dat"にもPATHを指定するところがあり、こっちだけそのままだと気分がわるいのでこちらも書き換えておく。

DirList.datも編集

結果

Goodですね〜

【備忘録】買い物ポケットを滅しましょう

買い物ポケット、うざいですよね。

自分はブラウザを比較的コロコロ変えるタイプなのですが、新しいブラウザをインストールするたびに勝手に拡張機能が追加されるものですから、業を煮やしているところでございました。

というわけで、買い物ポケット滅殺の方法をお教えします。自分はこの方法で買い物ポケットとおさらばできました。

ちなみに、買い物ポケットは「CrystalDiskInfo」や「CubePDF」などといったソフトと抱合せで勝手に入れられることが多いようです。

 

アプリを消す

Windowsの設定(Win+I)の「アプリ」の項目から、「インストールされているアプリ」を選択し、「買い物ポケット」あるいは「E START」のような名前のアプリをすべてアンインストールする。

 

レジストリを消す

レジストリを消すと最悪Windowsが起動しなくなるので、一応バックアップしておきましょう

  1. Win+Rを押して「regedit」を入力→Enter
  2. レジストリエディタが開くので、上部の「編集」→「検索」を選択
  3. 検索欄に買い物ポケットの拡張機能ID「pgmbeccjfkdbpdjfoldaahpfamjjafma」を入力し、「サブツリーで検索」にチェックを入れて検索
  4. 「pgmbeccjfkdbpdjfoldaahpfamjjafma」という名前のキーがヒットすると思うので、キーとサブキーを完全に削除する

おわりに

以上です。

買い物ポケットは悪名高き旧JWord系のサービスで、今はGMOにより運営されているようです。

GMOのサービスはなるべく使わないようにしましょう!くたばれGMO

Googleドライブ(デスクトップ版 Google File Stream)でストリーミングフォルダに2バイト文字が含まれてしまう問題

デスクトップ版Googleドライブをインストールすると、新たに仮想ドライブのGドライブが作られ、そこからドライブ上のファイルにアクセスできるようになります。が、パスに日本語が含まれているため、特定のアプリケーションからアクセスしようとするとアクセスに失敗することがあります。

クソうざい

これを解決する方法を見つけましたので備忘録です。

 

分かる人向け

レジストリの"HKEY_CURRENT_USER\Software\Google\DriveFS"にDWORDキー"DisableLocalizedVirtualFolders"を追加し、値を1に設定してGoogleドライブを再起動

わからない人向け

  1. Winキー+Rを押すと「ファイル名を指定して実行」というウィンドウが開くので、「regedit」と入力してEnter



  2. (人によってはユーザーアカウント制御の画面が出るので許可する)

  3. レジストリ エディター」という画面が開くので、左側のツリーを、
    HKEY_CURRENT_USER→Software→Google→DriveFS
    の順にダブルクリック

    こんな画面です 左側のツリーを指示の通りクリックしましょう

     

  4. すると、

    このような画面になります。

  5. 右側の空白部分を右クリックして、新規→DWORD(32ビット)値の順に選択

    ここをこうしてこう

     

  6. 「新しい値 #1」という項目ができるので、右クリック→名前の変更を押し、名前を「DisableLocalizedVirtualFolders」に変更

  7. 変更した項目名をダブルクリックすると、「DWORD(32ビット)値の編集」というウィンドウが開くので、値のデータを1に変更してOKを押す

    こうしてこう

     

  8. レジストリエディタを閉じてGoogleドライブを再起動

  9. こうなってるはずです

    いいね


でも空白は入ってるんだね

WSL2+UbuntuでC++の競プロ環境を作る

なんとなくVimを使いたくなったのですがWindowsとの相性が悪すぎたのでWSL使ってUbuntu上で動くようにしました。

環境

Windows11 Home 22H2

WSL2でUbuntuインストール

よっぽどのことがなければwslコマンドは通るようになってると思うから省略 無理だったらWindowsUpdate確認

  • Windowsの機能から「LinuxWindowsサブシステム」と「仮想化プラットフォーム」を有効にする

  • wslのデフォルトをwsl2にする

wsl --set-default-version 2
  • Ubuntuをインストール(管理者で)
wsl --install -d Ubuntu

ここからはUbuntu上で

  • neovimインストール
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:neovim-ppa/unstable
$ sudo apt-get update
$ sudo apt-get install neovim
  • ~/.config/nvimにinit.vim,dein.toml,dein_lazy.toml作成
  • ~/.config/nvim/pluginsにcoc.vim作成

中身は適当に

"行番号を表示
set number
"シンタックスハイライトをon
syntax on
"行末まで検索した後行頭に戻って検索
set wrapscan
"検索結果をハイライト表示(:nohで消す)
set showmatch
"tabキーで挿入されるスペースの数
set shiftwidth=2
"中括弧を始めた後などの改行のあと自動的にインデントを入れる
set smartindent
"インデント周りの各種機能で操作されるスペースの数
set softtabstop=4
"VimではUTF-8で文字を表示する
set encoding=utf-8
"UTF-8でファイルを読み込み、ダメだったらShift_JISを試す
set fileencodings=utf-8,sjis
"UTF-8でファイルを書き込む
set fileencodings=utf-8
"コマンドモードでtabを使ってファイル名を補完するときに、1回目は最大共通文字列、次からは順番にファイル名を完全補完する
set wildmode=longest,full

"Ctrl+J,Ctrl+Kでパラグラフ一つ分移動 nnoremap <C-j> } nnoremap <C-k> {

" Vim起動時に画面下側にターミナルを立ち上げ、いいぐらいの高さにしておく(resizeの値は適宜調整) if has('vim_starting') split wincmd j resize 15 terminal wincmd k endif

"エディタとターミナルの操作をCtrl+Tで切り替え tnoremap <C-t> <C-&gt;<C-n><C-w>k nnoremap <C-t> <C-w>j i "ターミナルモード中にEscでターミナルノーマルモードに移行 tnoremap <Esc> <C-&gt;<C-n>

set autochdir

let &t_SI .= "\e[5 q"

inoremap { {}<LEFT> inoremap [ []<LEFT> inoremap ( ()<LEFT> inoremap " ""<LEFT> inoremap ' ''<LEFT>

"dein setting-------------------------------------------------------- let s:dein_dir = expand('$HOME/.cache/dein') let s:dein_repo_dir = s:dein_dir . '/repos/github.com/Shougo/dein.vim' "if &compatible " set nocompatible " Be iMproved "endif " dein.vimがない場合githubからDL if &runtimepath !~# '/dein.vim' if !isdirectory(s:dein_repo_dir) execute '!git clone https://github.com/Shougo/dein.vim' s:dein_repo_dir endif execute 'set runtimepath^=' . fnamemodify(s:dein_repo_dir, ':p') endif " 設定開始 if dein#load_state(s:dein_dir) call dein#begin(s:dein_dir) " プラグインリスト(toml) let g:rc_dir = expand('$HOME/.config/nvim') let s:toml = g:rc_dir . '/dein.toml' let s:lazy_toml = g:rc_dir . '/dein_lazy.toml' " tomlのロード call dein#load_toml(s:toml, {'lazy':0}) call dein#load_toml(s:lazy_toml, {'lazy':1}) " 設定終了 call dein#end() call dein#save_state() endif " Required: filetype plugin indent on syntax enable " 未インストールがあればインストール if dein#check_install() call dein#install() endif "dein setting end------------------------------------------------------

"nerdtree setting nmap <C-f> :NERDTreeToggle<CR>

"Clipboard setting set clipboard+=unnamedplus

[[plugins]]
repo = 'Shougo/dein.vim'

plugins repo = 'vim-airline/vim-airline' hook_add =''' let g:airline#extensions#tabline#enabled = 1 nmap <C-p> <Plug>AirlineSelectPrevTab nmap <C-n> <Plug>AirlineSelectNextTab let g:airline#extensions#tabline#buffer_idx_mode = 1 '''

plugins repo = 'vim-airline/vim-airline-themes' hook_add =''' let g:airline_theme = 'bubblegum' let g:airline#extensions#tabline#enabled = 1 let g:airline_powerline_fonts = 1 '''

plugins repo = 'ryanoasis/vim-devicons'

plugins repo = 'preservim/nerdtree'

plugins repo = 'neoclide/coc.nvim' merged = 0 rev = 'release' hook_add = ''' source ~/.config/nvim/plugins/coc.vim '''

dein_lazy.tomlは使い方がいまいちよくわからなかったので空です。

" デフォルトでインストールするもの
let g:coc_global_extensions = [
    \'coc-clangd',
    \]

" エラーと警告の色を指定 highlight CocErrorSign ctermfg=15 ctermbg=196 highlight CocWarningSign ctermfg=0 ctermbg=172

"スペースinfoでHover noremap <silent> <Leader>info :<C-u>call CocAction('doHover')<cr> "スペースdfでDefinition nnoremap <silent> <Leader>df :call CocAction('jumpDefinition')<CR> "スペースfmtでFormat nnoremap <space>fmt :call CocAction('format')<CR> " Coc-quick-fix nnoremap <space>fx :call CocAction('doQuickfix')<CR> " autocomplete inoremap <silent><expr> <C-j> coc#pum#visible() ? coc#pum#next(1) : "&lt;C-j>" inoremap <silent><expr> <C-k> coc#pum#visible() ? coc#pum#prev(1) : "&lt;C-k>" inoremap <silent><expr> <Enter> coc#pum#visible() ? coc#pum#confirm() : "&lt;Enter>" inoremap <silent><expr> <Esc> coc#pum#visible() ? coc#pum#cancel() : "&lt;Esc>" inoremap <silent><expr> <C-h> coc#pum#visible() ? coc#pum#cancel() : "&lt;C-h>"

うまくいってればこの時点でこんな感じになってるはず

C++のファイルを開いたところ

atcoder-cliとonline-judge-toolsのインストール

製作者様のブログに準じます

tatamo.81.la

-node.jsが必要なのでインストール

$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

一旦ターミナル再起動

$ nvm install node
$ npm install -g npm
  • pip3のインストール
$ sudo apt-get install python3-pip
  • atcoder-cli, online-judge-toolsのインストール
$ npm install -g atcoder-cli
$ pip3 install online-judge-tools

accとojコマンドが通ってればOK

atcoder-cliとonline-judge-toolsの設定

  • ログイン
$ acc login
$ oj login https://atcoder.jp/
  • 連携のための設定
$ acc config default-contest-dirname-format test
$ acc config default-task-choice all

テンプレート設定

$ acc config-dir
$ cd ~/.config/atcoder-cli-nodejs
$ mkdir cpp
$ cd cpp

この中にmain.cppとtemplate.jsonを作成

/**
*    author:  mioupa
**/

#include <bits/stdc++.h> #include <math.h> #define rep(i, n, m) for (int i = n; i < m; ++i) #define ll long long #define ALL_RANGE(v) v.begin(), v.end() #define REV_ALL_RANGE(v) v.rbegin(), v.rend() #define INF 1010000000

using namespace std;

template <class T> inline bool chmax(T &a, T b) { if (a < b) { a = b; return 1; } return 0; } template <class T> inline bool chmin(T &a, T b) { if (a > b) { a = b; return 1; } return 0; }

//-----------------end_template------------------

int main() {

return 0; }

{
  "task":{
    "program": ["main.cpp"],
    "submit": "main.cpp"
  }
}

$ acc config default-template cpp

↑いちいち問題選ぶのがめんどくさいので

使い方

適当にAtcoder用のディレクトリを作って

acc new {コンテスト名}

を叩く

サンプルがダウンロードされるので問題ごとにmain.cppに書き込んでいって(多分テンプレートが入ってるはず)

g++ main.cpp && oj t

コンパイル&テストケース確認

acc s

で提出

おわりに

全部適当なのでなんか問題あったら指摘ください。よろしくお願いいたします。

【備忘録】RealESRGAN 導入(CUI)

AIってすごいですね

 

インストール

GitHubからダウンロード

github.com

zip展開して適当なところに置いとく

 

環境変数の設定

realesrgan-ncnn-vulkan.exeがあるフォルダのPathを環境変数に追加

 

(参考:https://www.k-cube.co.jp/wakaba/server/environ.html)

 

 

Path通ってるか確認

realesrgan-ncnn-vulkan.exe -h

↑これ打ち込んでヘルプ出てきたらいい感じ

 

使い方

コマンド例

realesrgan-ncnn-vulkan.exe -i input.jpg -o output.png -n model_name

ファイル名んとこをフォルダにするとフォルダ内の画像一括でできる

モデル一覧
  1. realesrgan-x4plus (デフォルト 速い)
  2. realesrnet-x4plus (よくわからない 実写向け?)
  3. realesrgan-x4plus-anime (アニメ向け? 遅い 多分画質いいんだろうけど素人目にはわからん)
  4. realesr-animevideov3 (アニメ向け? 速い)
オプション
  • -n モデル選択
  • -i インプットファイル/フォルダ選択
  • -o アウトプットファイル/フォルダ選択
  • -s 拡大率(2,3,4がある デフォルトは4)
  • -f 出力フォーマット(.jpgとか.pngとか)指定

多分ほかは使わん

 

追記(2024/09/01)

scoop使ってる方

scoop install realesrgan-ncnn-vulkan

でOK