掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 1508|回复: 1

[经验交流] 手工制卡一些提高效率的方法分享 (Mac)

  [复制链接]
  • TA的每日心情
    慵懒
    2021-9-1 08:46
  • 签到天数: 61 天

    [LV.6]常住居民II

    发表于 2021-8-23 11:11:00 | 显示全部楼层 |阅读模式
    本帖最后由 zhangchaont 于 2021-8-23 11:21 编辑
    9 P; h6 R6 m1 ~3 _2 `7 |8 K3 [; ?/ D
    用Anki学习已经成为了我的一个习惯,在不断学习的过程,需要不断的制作新的卡片。当然用Python批量制卡是一个很省力的方法,这个在论坛里面有好多介绍的了。但是有些是不能使用现有的批量制卡的方法的,没有办法只好手工来干。
      i$ g* U8 [' f3 \' \+ }# g: O1 L6 \6 s4 b  _2 _
    不过,即使是手工,也可以使用一点办法来节约时间。下面我就以一个实例是演示一下,希望能够起到抛砖引玉的作用,大家共同探讨制卡的经验,共同提高。
    ; T7 r1 U+ b% f; C; G- n" z/ `7 b9 l+ N7 @7 J
    最近我在学习NHK的新闻听力,在微信上面订阅的。以其中一篇为例,我要把下面这链接里面的MP3下载下来,然后把文章中的中日文分开,分别填到对应的字段里面。
    6 _5 Y) J8 X0 U9 y7 g9 l  D新闻地址3 G" E# w7 m/ ?$ z5 Z
    % R4 y2 p. `; x+ P' v/ ~3 a0 I
    首先是下载MP3,以我用的Chrome浏览器为例,在页面上点击右键→检查,在右边出来的窗口里面选择network,下面选择media,然后点击左边的播放按钮,就会得到MP3的链接,选中链接点击右键转到地址就会弹出页面然后就可以下载了,如果不明白就看下面的图。
    * a0 g2 t: a7 |. V
    ! Y, q# O1 p% {4 c' E* i4 Z/ L6 j下载后得到一个就getvoice.mp3的文件。下面我要做的是做一个自动改文件名的功能,这个是在macOS上用自带的automation APP实现的。
    7 h" i% m  Q; v' W在自动操作里面新建一个文件夹操作。然后按下图安排一下流程。
    - b1 Q! O& o* Q; b8 s* b
    ( \! z" ^! R+ z  l" i" }- {7 h稍微解释一下:3 y; g: ~# m3 j" H/ [/ i9 p
    1. 这个自动操作接受下载文件夹里面有变化的文件,并传给下一步。
    # n) h$ K0 z  b1 y) }' c2. python从stdin里面得到文件名,判断如果是getvoice.mp3的话,就改成一个uuid的文件名。
    6 q9 P: c% `- N3 H- S0 V& ]* k& y3. 设置一个变量保存新文件名,然后输出的通知里面。, w# u% ]$ Q8 c1 v
    ) A9 x  I7 T( X3 ?/ ]  M
    然后是把网页上面的文字复制下来,用Vim操作一下分成中文和日文并每行中间插入一个空行,然后分别复制到剪贴板里。8 |& F) e; ?& u1 }5 |+ ~
    下面我们一步一步的来操作:1 w. S0 B% }0 O
    1. 删除掉空行6 ]1 u: W- q4 E! Z3 }
    在Vim里面输入:v/./d
    ) E# \: B  w7 |3 ?+ }+ X$ q) {& T: d5 }( C
    2. 把中文和日文分开
    2 s; y* X3 j: x; p7 d# m在Vim里面输入:g/./+m$
    . i" o5 f! }# v( |9 @. U这个命令的意思是把每一行的下面一行移到最后。0 W- D: h9 F" n( h7 ^" v' @2 r& `* d

      H, q) n  N" P3. 插入空行3 b  N, u# l/ J) A
    在Vim里面输入:%s/$/\r/g
    ) I2 K( a! \8 Q+ K5 H' ?把行尾$标记替换成换行\r
    5 T; P, |$ p0 F1 |2 y4 x2 v/ ]1 u) U- \  g
    4. 把前半的日文部分和后半的中文部分复制到剪贴板里# z1 R- w$ k3 Q! C
    :let middle = line("$")/2$ N# |0 M+ X1 g! S
    :execute "0," middle "y +"
    * ~6 ~7 G# V* y& K8 j% A:2sleep4 g' A( E# V" n3 Q
    :execute middle "$y +"
    1 c! ]& W6 A' O# C5 E首先命名一个变量middle,存储中间行号,然后分两次将两个部分复制到系统剪贴板+里面。中间休息2秒,复制太快会导致复制不进去。
    5 p5 t) i9 Q5 h" H复制到剪贴板里面后,因为Alfred有记录剪贴板的功能,所以就可以很方便的在Anki里面复制进相应的字段了。% g5 @4 W  y0 A& `
    最后可以把上面所有的这些命令做成一个.vim文件,然后指定给一个快捷键,就可以非常方便的执行了。
    * R( v4 |1 M- U/ ^; Z4 r- Q4 p# ^
    1. v/./d* h3 g* _. f, v1 \1 J. h: [
    2. g/./+m$
      ! v9 g1 c* E. D4 ^
    3. %s/$/\r/g# A1 ^/ W4 ~- j8 ]
    4. let middle = line("$")/2* v$ }/ _* F- g0 F+ @
    5. execute "0," middle "y +"
      3 U! i$ F* x9 D/ Z
    6. 2sleep
      / T& K. E$ i4 f, J9 z
    7. execute middle ",$y +"
    复制代码

    9 [6 A7 g7 X; \我将上述代码保存在~/.vim/nhk.vim7 F0 {% D3 q7 C9 \) ~! g' H7 ?
    然后将以下内容添加到.vimrc文件里面。
    ) w7 p' u3 G" k3 G4 O% ]
    1. nnoremap <leader>nhk :source ~/.vim/nhk.vim<cr>
    复制代码
    $ m- O2 K; _# i) b* u5 u0 U
    我的leader键是",",所以以后只要把内容粘贴进来,按下,nhk就可以愉快的进行了。7 h$ U; n$ k5 {! _( v% k3 ]. b9 n
    : s4 s$ l; N" C( q* Z% a7 f2 I
    这篇帖子里面涉及了一些Python的编程,以及macOS的automation自动化,Vim,除了Python以外不是太大众,但是如果熟练使用的话,可以大量的节约时间,值得你一试。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?免费注册

    x

    评分

    2

    查看全部评分

    该用户从未签到

    发表于 2022-8-16 13:36:16 | 显示全部楼层
    看不懂,但是很震撼
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

    小黑屋|手机版|Archiver|PDAWIKI |网站地图

    GMT+8, 2025-5-11 08:00 , Processed in 0.020776 second(s), 23 queries .

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表