本文目标:在一个安卓设备上,成功安装GUI Emacs且能使用 Termux 管理 Emacs 所用的 git 等工具。同时,成功加载 doom-emacs 配置。

2023 年初,即将发布的 Emacs 30.1 将对 Android GUI 的支持包括其中。这意味着除了桌面端,移动端也有原生的 Emacs 体验了。(当然,iOS由于其自身特性,未来也不可能支持 Emacs。)

与常规安卓应用不同的是,要想更好的在安卓平台使用 Emacs,直接安装 APK 远远不足,还需要进行额外配置。

此外,因为 doom-emacs 的配置涉及到调用 Emacs 本身,但是安卓系统又没有提供现成的 emacs 可执行命令,配置起来不如桌面端顺畅。在此分享我的配置经验,希望多少能帮到一些朋友。

在此特别感谢 oldosfan,ta 是 Android Port 主要贡献者,并且在如何在 Android Emacs 配置 doom-emacs 对我帮助良多。

1. 安装 Android Emacs

最佳方式是安装特定版本的Emacs和Termux,二者共享相同的 sharedUserId manifest attribute 和签名,这意味着二者可以互相访问对方的数据文件夹( /data/data/org.gnu.emacs//data/data/com.termux/ ),这样使用 Termux 来安装 GNU/Linux 应用程序后,Emacs 中就可以运行这些应用程序。


  1. Emacs 和 termux 必须按照特定的顺序安装特定的版本,如果之前已经安装过,请先卸载,以避免 sharedUserId 或签名冲突。
  2. ​安装特定版本的 Termux,从 Android ports for GNU Emacs - Browse /termux at SourceForge.net 下载APK文件进行安装。安装完成先不要打开 Termux。
  3. ​从上一个网址中选择合适版本的 Emacs 来安装。
    • 👎 不推荐F-Droid 的版本,因为:
      • 版本并非最新:缺少错误修复和新功能。
      • 缺少许多依赖包:GnuTLS, image libraries, tree-sitter
    • 挑选主要依据​安卓系统版本​和​芯片CPU架构​。例如 emacs-30.0.50-29-arm64-v8a.apk 适用于运行 Android 10.0 或更高版本的 aarch64 设备,是一个常见的选择。如果安装的版本不匹配,将无法正常执行。
  4. 两个都安装完成,打开 Termux,执行以下命令,安装并更新所有应用程序。

    pkg update && pkg upgrade
    
    • 如果太慢,可以考虑Termux换成国内镜像源。
  5. 打开 Emacs,在 ~/.emacs.d/early-init.el 中加入:

    1
    2
    3
    4
    5
    (when (string-equal system-type "android")
    ;; Add Termux binaries to PATH environment
    (let ((termuxpath "/data/data/com.termux/files/usr/bin"))
    (setenv "PATH" (concat (getenv "PATH") ":" termuxpath))
    (setq exec-path (append exec-path (list termuxpath)))))

    • 该代码将 Emacs 与 Termux 文件系统绑定,从而让 Emacs 访问通过 Termux 安装的程序。
    • 🤔 官方文档还对 LD_LIBRARY_PATH 环境变量进行了配置。但是配置之后,在 Emacs 中运行 mpv 会出现问题,不配置这个变量也暂未发现问题。留待观察。
  6. 重启 Emacs,应用配置。如果你在 Termux 中已经安装了 git,可以尝试在 Emacs 执行 (executable-find "git") 。如果返回git的路径,说明配置成功。

2. 使用 doom-emacs 配置

因为,Android 中没有 Emacs 可执行文件,shell 路径也不同,因此需要一定的修改才能进行 doom install。以下操作​请注意区分​,是在Termux中运行,还是在 Emacs Shell 中运行。


  1. 在 Termux 中安装 Git

    pkg install git
    
  2. 在 Termux 中,=git clone= doom-emacs 到 Emacs 主目录

    git clone --depth 1 https://github.com/hlissner/doom-emacs /data/data/org.gnu.emacs/files/.emacs.d.doom
    
  3. 在 Android Emacs 的 shell 环境中,软链接 emacs 可执行文件:

    ln -s /data/data/org.gnu.emacs/lib/libandroid-emacs.so /data/data/com.termux/files/usr/bin/emacs
    
    • 链接成功后,在Android Emacs中运行 emacs --version 应该可以看到:

      emacs –version GNU Emacs 30.0.50 Copyright (C) 2024 Free Software Foundation, Inc. GNU Emacs comes with ABSOLUTELY NO WARRANTY. You may redistribute copies of GNU Emacs under the terms of the GNU General Public License. For more information about these matters, see the file named COPYING.

    • 否则,在执行doom时会报错:

      Error: failed to run Emacs with command 'emacs'

      Are you sure Emacs is installed and in your $PATH?

  4. 编辑 .emacs.d.doom/bin/doom ,修改 Shebang:​#!/usr/bin/env sh#!/system/bin/sh
    • hlissner 建议不要修改doom Shebang,直接在执行命令时指定 shell,例如 sh ~/.emacs.d/bin/doom install=。很遗憾,由于 cache 机制该方案并不生效,必须修改 doom Shebang。升级doom需要使用 =doom upgrade --force 并再次修改 Shebang。
  5. ~/.emacs.d/early-init.el 中的内容添加到 ~/.doom.d/init.el​,以便生成 doom env 文件的时候把 Termux 路径加入到 PATH 环境变量。
  6. 在 Android Emacs 的 shell 环境​中执行 doom install
    • 在Android Emacs 的 shell 环境中执行 doom install 非常慢,可以考虑把其他环境的 repos 文件夹复制到 ~/.emacs.d.doom/.local/straight/repos 再执行 doom install,跳过 git clone,加快速度。
    • 如果提示 error ("Failed to run \"git\"; see buffer *straight-process*") ,可以尝试:
      • 检查 doom 的 env 文件是否把 Termux 路径加入到 PATH
      • 在 eshell中执行命令,不要在 shell 中执行
      • 执行 (setq android-use-exec-loader nil)
  7. 安装完成之后,把 .emacs.d.doom 软链接为 .emacs.d=。建议不要直接改名,这样未来改变 =.emacs.d 指向的路径就可以切换配置,进行debug。
  8. 重新启动,Emacs 应该可以加载 doom-emacs 配置了。由于 Android 和桌面端的路径以及支持的功能并不完全一致。一般需要对 doom-emacs 配置进行调整。享受在 Android 上使用 Emacs 的快乐吧。

3. 更新历史

  • [2024-03-09 六] 编辑文件从 .emacs.d.doom/early-init.el → =~/.doom.d/init.el=,减少对 doom-emacs repo 的修改,感谢 hlissner
  • [2024-02-04 日] 初稿

Date: 2024-02-04 日 00:00

Validate

In early 2023, the upcoming Emacs 30.1 release included support for Android GUI. This means that besides desktop, there will also be a native Emacs experience on mobile. (Of course, due to its own restrictions, iOS will not never support Emacs in the future.)

Unlike regular Android apps, just installing the APK is far from enough to use Emacs well on Android; additional configuration is required.

Moreover, since the configuration of doom-emacs involves calling Emacs itself, and the Android system does not provide a ready-made emacs executable command, the configuration is not as smooth as on desktop. Here I share my configuration experience, hoping to help some people.

Special thanks to oldosfan, the main contributor to the Android Port, who has been of great help to me in configuring doom-emacs on Android Emacs.

1. Installing Android Emacs

The best way is to install specific versions of Emacs and Termux, sharing the same sharedUserId manifest attribute and signature, meaning they can access each other's data folders (/data/data/org.gnu.emacs/ and /data/data/com.termux/), allowing Emacs to run applications installed through Termux.


  1. Emacs and termux must be installed in a specific order and version. If installed previously, please uninstall first to avoid sharedUserId or signature conflicts.
  2. First, install a specific version of Termux from Android ports for GNU Emacs - Browse /termux at SourceForge.net. Do not open Termux after installing.
  3. Then, choose a suitable version of Emacs to install from the same website.
    • 👎 The version from F-Droid is not recommended because:
      • It's not the latest version: missing bug fixes and new features.
      • It lacks many dependency packages: GnuTLS, image libraries, tree-sitter
    • The main selection criteria are Android system version and chip CPU architecture. For example, emacs-30.0.50-29-arm64-v8a.apk is suitable for devices running Android 10.0 or higher on aarch64, a common choice. If the installed version does not match, it will not work properly.
  4. After both are installed, open Termux and execute the following command to install and update all applications.

    pkg update && pkg upgrade
    
  5. Open Emacs and add to ~/.emacs.d/early-init.el:

    1
    2
    3
    4
    5
    (when (string-equal system-type "android")
    ;; Add Termux binaries to PATH environment
    (let ((termuxpath "/data/data/com.termux/files/usr/bin"))
    (setenv "PATH" (concat (getenv "PATH") ":" termuxpath))
    (setq exec-path (append exec-path (list termuxpath)))))

    • This code binds Emacs with the Termux file system, allowing Emacs to access programs installed through Termux.
    • 🤔 The official documentation also configures the LD_LIBRARY_PATH environment variable. However, configuring it causes problems running mpv in Emacs, and not configuring it has not shown problems so far. To be observed.
  6. Restart Emacs to apply the configuration. If you have already installed git in Termux, you can try executing (executable-find "git") in Emacs. If it returns the path to git, the configuration is successful.

2. Using doom-emacs configuration

Because there is no Emacs executable file in Android and the shell path is different, some modifications are necessary for doom install. Please pay attention to distinguish whether the following operations are run in Termux or in Emacs Shell.


  1. Install Git in Termux

    pkg install git
    
  2. In Termux, git clone doom-emacs to the Emacs main directory

    git clone --depth 1 https://github.com/hlissner/doom-emacs /data/data/org.gnu.emacs/files/.emacs.d.doom
    
  3. In the shell environment of Android Emacs, soft link the emacs executable file:

    ln -s /data/data/org.gnu.emacs/lib/libandroid-emacs.so /data/data/com.termux/files/usr/bin/emacs
    
    • After successful linking, running emacs --version in Android Emacs should show:

      emacs –version GNU Emacs 30.0.50 Copyright (C) 2024 Free Software Foundation, Inc. GNU Emacs comes with ABSOLUTELY NO WARRANTY. You may redistribute copies of GNU Emacs under the terms of the GNU General Public License. For more information about these matters, see the file named COPYING.

    • Otherwise, when executing doom, it will report an error:

      Error: failed to run Emacs with command 'emacs'

      Are you sure Emacs is installed and in your $PATH?

  4. Edit .emacs.d.doom/bin/doom, change the Shebang: #!/usr/bin/env sh#!/system/bin/sh
    • hlissner suggests not to modify the doom Shebang and to specify the shell directly when executing the command, like sh ~/.emacs.d/bin/doom install. Unfortunately, due to the cache mechanism, this solution does not work, and it is necessary to modify the doom Shebang. To upgrade doom, use doom upgrade --force and then modify the Shebang again.
  5. Add the contents of ~/.emacs.d/early-init.el to ~/.doom.d/init.el​, to add the Termux path to the PATH environment variable when generating the doom env file.
  6. Execute doom install in Android Emacs
    • Running doom install in the shell environment of Android Emacs is very slow, consider copying the repos folder from another environment to ~/.emacs.d.doom/.local/straight/repos, then execute doom install. This skips the git clone step and speeds up the process.
    • If prompts error ("Failed to run \"git\"; see buffer *straight-process*"), you can try:
      • Checking if the Termux path is added to the PATH in doom's env file
      • Execute commands in eshell, not in shell
      • Execute (setq android-use-exec-loader nil)
  7. After installation, link .emacs.d.doom as .emacs.d. It is recommended not to rename directly, so that changing the path pointed to by .emacs.d in the future can switch configurations for debugging.
  8. Restart, and Emacs should be able to load the doom-emacs configuration. Since the paths and supported features on Android and desktop are not completely consistent, the doom-emacs configuration generally needs to be adjusted. Enjoy your doom-emacs on Android.

3. Update History

  • [2024-03-09 六] Edit the file from .emacs.d.doom/early-init.el to ~/.doom.d/init.el, to reduce modifications to the doom-emacs repo, thanks to hlissner.
  • [2024-02-04 日] First draft

Date: 2024-02-04 日 00:00

Validate

本文旨在Excel中利用函数查找满足条件的最大值,解决诸如「在张三、李二、王五中,李二的俯卧撑最高记录是多少」之类的问题

最近在思考怎么用Excel分析自己的阅读情况,需要查找满足条件的最大值,例如查找当A列值=X时,B列值中的最大值,因此单纯的 MAX 不够。以下是实例和解决方案:

1. 示例

找到下表中每本书已经读到多少页,即每本书的最大页码(例如『开放的智力』读到了180页,『我的一生』读到了83页):

活动类别 页码
开放的智力 38
开放的智力 86
开放的智力 136
开放的智力 180
How to Read a Book 19
一生受用的分类技巧 52
一生受用的分类技巧 109
我的一生 39
一生受用的分类技巧 224
一生受用的分类技巧 262
我的一生 47
我的一生 83

<!– more –>

可以直接复制表格内容1,粘贴到Excel工作表A1单元格,进行试验。大体有数组公式和普通公式两种方式。

Ctrl+Shift+Enter 生成数组公式;直接按 Enter 生成普通公式。

2. 数组公式

  1. 在 C2 单元格输入公式(以下3种皆可):
    • =MAX(IF(A:A=A2,B:B,0)) 2
    • =MAX(IFERROR((A:A=A2)*B:B,0))

      不用 IFERROR 函数的话会出现 #VALUE! 错误。因为首行为文本格式,不能进行数值计算(A1*B1)。

    • =MAX((A$2:A$13=A5)*B$2:B$13,0) 3

      不将首行包含在求值范围内,则不会出现出现 #VALUE! 错误

  2. Ctrl+Shift+Enter 并向下填充,设置单元格格式

    数组公式,输入结束后必须按住Ctrl+Shift键回车。在编辑栏显示的公式两边会自动添加上大括号,这是使用数组公式必不可少的步骤。

总结:

  • 优点:可以在整列中查找符合条件的最大值,方便以后添加新数据时的公式的自动生成
  • 缺点:运算速度相对较慢,在数据多时尤为吃力

3. 普通公式4

  1. 输入公式 =SUMPRODUCT(MAX((A$2:A$13=A2)*B$2:B$13))
  2. Enter 并向下填充,设置单元格格式

总结:

  • 优点:计算相对较慢
  • 缺点:不能针对整列求值, =SUMPRODUCT(MAX((A2:A30=A2)*B2:B30)) 会因首行为文本格式出现 #VALUE! 错误5,要想针对整列(这样以后加入新的记录,就可以直接自动计算),只能引用 A$2:A$1048576 (1,048,576是Excel 2010的最大行数限制6

4. 更新历史

  • [2016-05-14 六] 拟定初稿
  • [2016-05-13 五] 拟定大纲

Date: 2016-05-13 五 00:00

Validate

对比Goodreader与PDF Expert,方便有需要的朋友进行选择。

Goodreader和PDF Expert是iOS上最受好评的PDF阅读APP,分别于特价优惠和限免时收入,现对二者功能进行简略对比,方便大家的选择。

  Goodreader PDF Expert
界面 功能按钮堆叠在一起 设计清爽、归类合理
浏览模式 单页、双页并排 单页(垂直滚动、水平滚动)
切白边 直观方便,支持奇偶页分别设置 只支持文字版PDF1
阅读主题 只可调节亮度 可调节背景色,扫描版PDF也可以!2
查词3 支持内建字典:点两下 支持内建字典:点一下
注释 高亮、下划线、删除线、注释、文本框等 高亮、下划线、删除线、注释、文本框等,设计更易用
导出注释 导出高亮、注释、文本框笔记列表 不支持
注释扁平化4 支持 不支持
手写 放大视图中手写可自动换行,但橡皮擦需另外调出 放大视图中手写可自动换行
手写-笔模式 任意色,4种透明度,7种粗细(0.5~9pt) 可保存常用笔设置,18色,4种透明度,18种粗细(1~18pt)
同步 支持服务详见5,需要手动点击同步 支持服务详见6,可后台自动同步
PDF 签名 支持 支持
填写表单 不支持 支持
图章 不支持 支持「Approved」等图章,也可自定义
修订 不支持 支持
价格 $4.99 (¥30,历史最低¥6) $9.99(¥68,曾有过一次限免)

<!– more –>

到此已经比较清楚了:

  • Goodreader阅读 不二选择,虽然如果能设置背景色、优化同步会更完美,但是独有的切白边功能令其成为拥有大量扫描版PDF人士的优先选择。
  • PDF Expert 更适于 商务 ,iOS平台支持填写表单、图章、修订功能的APP我目前仅知此一家。不过如果它能真正实现切白边功能,我就会卸掉Goodreader,只留下这一个啦。

1. 更新历史

  • [2016-05-18 三] 完善注释
  • [2016-05-14 六] 拟定初稿
  • [2016-05-12 四] 草拟大纲

Footnotes:

1

pdf expert也提供这一功能,但在老版中,不过是"we allow you to zoom in freely",并非真正的切白边。此外,新版的crop mode只针对文本PDF,使得此功能在阅读扫描版PDF时成为摆设。

2

3

在iOS9以下的版本,欧路词典可实现划词翻译。

4

英文翻译:flatten annotations,将你的注释与PDF压扁到一起,让别人无法编辑。

5

GoodReader支持的同步服务:邮箱、Dropbox、OneDrive、Google Drive、SugarSync、box、Webdav、FTP、SFTP、AFP、SMB、Toshiba Wireless SSD

6

PDF Expert支持的同步服务有:Dropbox、OneDrive、Google Drive、SugarSync、box、Office 365、ShareFile、Yandex.Disk、Webdav、FTP、SFTP、SMB

Date: 2016-05-12 四 00:00

Validate

本文旨在介绍日语中促音的书写和发音规则。

1. 发音

占一拍,但是不发音。

在读含有促音的单词时:

  1. 促音前一假名的发音短促
  2. 进入促音的停顿时,做好发下一假名的准备。因此さ行假名前的促音,并非完全无声,而是可以听到“嘶嘶”的气流声。

1.1. 示例

  • ノック nokku:
  • じっさい jissai:

<!– more –>

2. 书写规则

用小字体っ/ッ来表示,注意和大写的つ/ツ区分。2个假名的关系只是外型相似,在发音上是完全没有关系的。

3. 电脑输入

  • 若要单独输入促音:可输入xtu,ltu,ltsu。
  • 在词语中输入促音:双写下一个假名的辅音字母。例如要输入“そっか”,打“sokka”即可。

4. 更新历史

  • [2016-03-18 五] 拟定初稿

Date: 2016-03-18 五 00:00

Validate

今日,友人问我现有作文模板如下,怎样可以优雅地录入文本:

首先吐槽一下设计模板的人,既然是作文模板,为何要用Excel,而不直接用Word的稿纸设置(详见用word怎么制作作文稿纸)?

好吧,既然现在不得不用这个Excel模板,最大的问题是连续打字只会录入到一个单元格内,如果要想一个格子一个字,必须打一个字,定位到下一个单元格,再打一个字,再定位到下一个单元格……(又想吐槽这个模板设计人了,绝对的只管起飞,不管降落)

现在的目标是: 一气呵成录完文稿,然后经过简单数步,正确地套用模板

1. 解决思路

该Excel模板每行17格,每2行之间有一空行。因为 Excel 会将以 Tab 分割的文本自动分列,所以将文本利用 正则表达式 处理,使其每行17个字,字与字之间用 Tab 隔开,并且每2行之间有一空行即可。

<!– more –>

2. 所需工具

  • 支持正则表达式的软件,例如 Emeditor
  • Excel

3. 操作步骤

  1. 录入文稿

    建议直接在文本编辑器中录入,即可排除不必要的干扰,又可保证后续操作的正确度。因为录入格式直接关乎最终结果,有几处需重点注意:

    • 一个自然段一行,段首空格直接录入两个空格
    • 省略号应录入标准的 …… 而非6个英文句号 ......
  2. 保存文稿副本
  3. 正则处理
    1. 替换多个数字
      • 查找: (\d|\.){2,}
      • 替换为: #
    2. 将文本处理为一行17个字的格式
      • 查找: ^(.{17})(.)
      • 替换为: \1\n\n\2
    3. 字与字之间用 Tab 隔开
      • 查找: .
      • 替换为: \0\t
    4. 手动修正换行,保证每行之间都有1行空行(可能在自然段首缺失空行)
  4. 全选正则处理后的文本,复制粘贴到Excel模版中
  5. 对照文稿副本,替换 # 为原始数字。

4. 更新历史

  • [2016-03-17 四] 拟定初稿

Date: 2016-03-17 四 00:00

Validate

本文旨在总结《大家的日语》中的语法知识。主要参考《大家的日语》课本及学习辅导书。

已更新到第10课

1. 句型

1.1. 陈述句

1.1.1. 名词陈述句

  1. 肯定形式: 名词1+は+名词2+です   L01 L03
    • 名词1:句子的主题
    • 「は」:助词,读作「わ」,提示主题。
    • 名词2:
      • 解释名词1是XXX。

        わたしは マイく·ミラ一です。(我是迈克·米勒。)

      • 名词2为场所时,表示物体、人等存在的场所。也可用动词 あります/います 来表示,参见此处:3.1.1.3.3

        山田さんは 事務所です。(山田在事务所。)

    • です:名词加上「です」构成谓语。详见2.7

    <!– more –>

    在句子主语很明显时,可省略「名词1+は」:

    Q:あれは だれの かばんですか。(那是谁的包?)
    A:佐藤さんの です。(是佐藤的。)

    今 何時ですか。(现在几点?)

    此外,「そうです」可用作一般疑问句的肯定回答。

  2. 否定形式: 名词1+は+名词2+じゃ ありません (日常语) 或 名词1+は+名词2+では ありません (正式语)   L01

    「じゃ ありません」(日常语)和「では ありません」(正式语)是「です」的否定形。「では」的「は」也读作「わ」。

    桑托斯不是学生:
       日常语:サントスさんは 学生じゃ ありません。
       书面语:サントスさんは 学生では ありません。

    さくら大学は あまり 有名な 大学じゃ ありません。(樱花大学不是很有名的大学。)

    在句子主语很明显时,可省略「名词1+は」:

    Q:この かばんは あなたのですか。(这个包是你的吗?)
    A:いいえ、わたしのじゃ ありません。(不,这不是我的。)

    此外,「そうじゃ ありません」可用作一般疑问句的否定回答。

1.1.2. 动词陈述句

名词+は+动词谓语

动词句中谓语清楚的情况下可以用「です」代替动词谓语。

1.1.3. 形容词陈述句   L08

1.2. 疑问句: 句子+か

助词「か」表示说话人不确切的口气或带有疑问的口气。「か」在句末构成疑问句,句末一般用升调。

1.2.1. 一般疑问句

  • 结构:陈述句(语序不变) + 助词「か」
  • 用途:询问陈述的内容是否正确。
  1. 名词疑问句   L01 L02

    回答:

    • 一般情况:回答重复提问内容
      • 肯定:「はい」
      • 否定:「いいえ」

        Q: ミラ一さんは 先生ですか。(米勒是老师吗?)
        A1:はい、先生です。(…是的,是老师。)
        A2:いいえ、先生じゃ ありません。(…不,不是老师。)

    • 如果询问内容为物品:除了按照一般情况的回答方式直接重复之外,通常采用以下回答:
      • 肯定:「はい、そうです」
      • 否定:「いいえ、そうじゃ ありません」或「いいえ、ちがいます」。

        Q: それは テレホンカードですか。(那是电话卡吗?)
        A1: はい、そうです。(…是的。[对,它是。])
        A2:いいえ、そうじゃ ありません。(…不是。[不,它不是。])
        A3:いいえ、違います。(…不是。)

  2. 动词疑问句   L04 L07
    • 询问 是否做了什么 (动词 + ました),回答时重复疑问句中的动词:
      • 肯定:「そうです」不能作为回答。
      • 否定:「そうじゃ ありません」不能作为回答。

        Q: きのう 勉強しましたか。(昨天学习了吗?)
        A1:はい、勉強しました。(…是的,学习了。)
        A2:いいえ、勉強しませんでした。(…不,没有学习。)

    • 询问 已经做了什么了吗 (もう 动词ました):
      • 肯定:「はい、もう 动词ました」
      • 否定:「いいえ、まだです」,不能用「动词ませんでした」(过去没做过某件事,不表示还没做的事)作否定回答。

        Q: もう 荷物を 送りましたか。(行李已经送去了吗?)
        A1:はい、[もう]送りました。(…是,已经送去了。)
        A2:いいえ、まだです。(…不,还没有。)

  3. 形容疑问句   L08

    回答时重复疑问句中的形容词。不能用「そうです」「そうじゃ ありません」来回答。

    寒い→
    Q: ペキンは 寒いですか。(北京冷吗?)
    A1:はい、寒いです。(…是的,很冷。)
    A2:いいえ、寒くないです。(不,不冷。)

    きれい[な]→
    Q: 琵琶湖の 水は きれいですか。(琵琶湖的湖水很干净吗?)
    A1:はい、きれいです。(…是的,干净。)
    A2:いいえ、きれいじゃ ありません。(…不,不干净。)

1.2.2. 选择疑问句   L02

  • 结构: 句子1か、句子2か
  • 用途:两个(以上)疑问句并列在一块,选择哪个正确
  • 回答:直接重复正确的一个。

Q:これは 「9」ですか、「7」ですか。(这是“9”,还是“7”?)
A:「9」です。(…是“9”。)

1.2.3. 特殊疑问句   L01 L04 L05 L06 L08

句子的语序不变。句末加「か」。

  1. 用疑问词替代想要询问的内容
    1. 谁(who):だれ、どなた   L10

      どなた是だれ的礼貌形

      Q: あの 方は どなたですか。(那位是谁?)
      A: 「あの 方は」ミラ一さんです。([那位是]米勒先生。)

      询问某个地方有谁:

      Q: 受付に だれが いますか。(有谁在接待处?)
      A: 木村さんが います。(…木村在。)

    2. 几岁(how old):なんさい、おいくつ

      おいくつ是なんさい的礼貌形

    3. 什么(what):「何」(なん、なに)   L10

      「なん」和「なに」都写作「何」,表示(什么)。二者的适用情境见下(主要看怎么读更顺口、方便):

      1. 「なん」适用于以下场合:
        1. 后续单词的词头是た行、だ行、な行:

          それは 何ですか。(那是什么?)
          何の 本ですか。(是什么书?)
          寝る まえに、何と 言いますか。(睡觉之前要说什么?[第21课])

        2. 询问带量词的数量:「なん」+量词

          テレサちゃんは 何歳ですか。(特蕾莎几岁了?)

      2. 上述(1)以外的情况用「なに」

        何を 買いますか。(买什么?)

      询问某个地方有什么:

      Q: 地下に 何が ありますか。(地下有什么?)
      A: レストランが あります。(…有一个餐厅。)

    4. 什么样的XXX:どんな+名词   L08 L09
      • 问某种事物是怎样的:名词1は どんな 名词2ですか(名词2是名词1的属性)

        Q: 奈良は どんな 町ですか。(奈良是什么样的城市?)
        A: 古い 町です。(…是古老的城市。)

      • 问某种事物的具体名称:

        Q: どんな スポーツが 好きですか。(你喜欢什么运动?)
        A: サッカーが 好きです。(…我喜欢足球。)

    5. 哪一个(which):どれ

      表示从具体的三件以上的物品中选出一个特定的。

      Q: ミラーさんの 傘は どれですか。(米勒先生的伞是哪一把?)
      A: あの 青い 傘です。(那把蓝色的伞。)

    6. 哪里(where):どこ、どちら(更郑重)

      Q: お手洗いは どこですか。(洗手间在哪里?)
      A: あそこです。(…在那里。)

      Q: エレベーターは どちらですか。(电梯在哪里?)
      A: あちらです。(…在那里。)

      Q: これは どこの コンピューターですか。(这是哪里的计算机?)
      A1:日本の コンピューターです。(…这是日本的计算机。)
      A2:IMC の コンピューターです。(…IMC的计算机。)

    7. 多少钱(how much):いくら
    8. 询问时间(when, what time):
      • 「なん」+量词:
        • 「なんじ」

          ニューヨークは 今 午前4時です。→
          Q: ニューヨークは 今 何時ですか。(纽约现在几点?)
          A: 午前4時です。(…凌晨4点。)


          毎朝 6時に 起きます。→
          Q: 毎朝 何時に 起きますか。(每天早上几点起床?)
          A: 6時に 起きます。(…6点起床。)

        • 「なんぷん」
        • 「なんようび」
        • 「なんがつなんにち」
      • 疑问词「いつ」:「いつ」后不用助词「に」。

        Q: いつ 日本へ 来ましたか。(什么时候来的日本?)
        A: 3月25日に 来ました。(…3月25日来的。)

  2. 直接加疑问词
    1. 询问原因(why):どうして   L09
      • 结构:
        • どうして+陈述句+か
        • 省略版:どうしてですか
      • 回答:句末加「から」

      Q: どうして 朝新聞を 読みませんか。(为什么早上不看报纸?)
      A: 時間が ありませんから。(…因为没有时间。)

      A: きょうは 早く 帰ります。(今天早点回去。)
      B: どうしてですか。(…为什么?)
      A: 子どもの 誕生日ですから。(因为今天是孩子的生日。)

2. 搭配

2.1. 名词1+の+名词2   L01 L02 L03 L10

「の」即为「的」。

IMCの 社員 (IMC公司的职员)
コンピューターの 本 (计算机的书)

  1. 「の」表示「名词2」属于「名词1」:
    • 在很明显的场合下,「名词2」可以省略。但是「名词2」表示人时不能省略。

      Q:あれは だれの かばんですか。(那是谁的包?)
      A:佐藤さんの です。(是佐藤的。)

      Q:ミラーさんは IMCの 社員ですか。(米勒是IMC公司的职员吗?)
      A:はい、IMCの 社員です。(…对,是IMC公司的职员。)

    • 提问「名词1」时,疑问词用「だれ」
  2. 「の」表示「名词2」是由「名词1」生产/制作:
    • 提问「名词1」时,疑问词用「どこ」

      Q: これは どこの コンピューターですか。(这是哪里的计算机?)
      A1: 日本の コンピューターです。(…这是日本的计算机。)
      A2: IMC の コンピューターです。(…IMC的计算机。)

  3. 「名词2」为方位名词:名词1(事物/人/地点)の 名词2(位置)

    • 方位名词:うえ、した、まえ、うしろ、みぎ、ひだり、なか、そと、となり、ちかく、あいだ
    • 后接助词「で」表方位

    机の 上に 写真が あります。(桌子上有照片。)
    郵便局は 銀行の 隣に あります。(邮局在银行的旁边。)
    駅の 近くで 友達に 会いました。(在车站附近见到了朋友。)

2.2. 名词1から 名词2まで   L04

  1. 表示「从名词1到名词2」:「から」(from)表示时间、场所的起点,「まで」(to)表示时间、场所的终点。

    9時から 5時まで 働きます。(从9点工作到5点。)
    大阪から 東京まで 3時間 かかります。(从大阪到东京要3小时。)

  2. 「から」和「まで」可以单独使用。

    9時から 働きます。(9点开始工作。)
    木村さんは 山田さんから 花を もらいました。(木村收到了山田送的花。)【关于此句,详见助词に 3.1.1.3

  3. 可以在「~から」、「~まで」、「~から~まで」后加上「です」(关于「です」详见2.7)。

    銀行は 9時から 3時までです。(银行从9点开到3点。)
    昼休みは 12時からです。(午休从12点开始。)

2.3. 姓名+さん   L01

  1. 用于他人的姓名之后以表达敬意,不能加在说话者自己的姓名后。如果知道对方姓名,提到他时一般不说「あなた」,而是在姓氏后加上「さん」

    ミラーさん(米勒)

  2. 用在场所名称之后表示该处的工作人员,此时可省略 さん

    花店的工作人员:
      花屋
      花屋さん

2.4. 「こ/そ/あ/ど」(指示词)   L02 L03

一般地:

  • 「こ」指离说话人近
  • 「そ」指离听话人近
  • 「あ」指离说话人和听话人都较远

此外,说话人把听话人也视为自己的领域内时,两者所在的场所为「ここ」,稍远一些的地方为「そこ」,更远为「あそこ」。

适用范围 「こ」系列 「そ」系列 「あ」系列 「ど」系列 说明
これ それ あれ どれ 指示代词
物/人 この 名词 その 名词 あの 名词 どの名词  
场所 ここ そこ あそこ どこ 指示代词
方向/场所(郑重) こちら そちら あちら どちら 指示代词

それは 辞書ですか。(那是字典吗?)
この 本は わたしのです。(这本书是我的。)
お手洗いは どこですか。(洗手间在哪里?)

どこ:询问①场所:XXX在哪里②产地,制造商:XXX是哪里生产的

Q: お手洗いは どこですか。(洗手间在哪里?)
A: あそこです。(…在那里。)

Q: これは どこの コンピューターですか。(这是哪里的计算机?)
A1: 日本の コンピューターです。(…这是日本的计算机。)
A2: IMC の コンピューターです。(…IMC的计算机。)

どちら:询问①场所,XXX在哪里

Q: エレベーターは どちらですか。(电梯在哪里?)
A: あちらです。(…在那里。)

2.5. 「お」+ 名词   L03 L06

  1. お+与听话人或第三者有关的事物:表达对听话人和与话题有关的人说话人的敬意。

    [お]国は どちらですか。(您是从哪里来的?)

  2. 接续很多词,表示郑重。

    [お]さけ(酒)
    [お]はなみ(赏樱花)。

  3. 惯用语,并不表示敬意或郑重

    おちゃ(茶)
    おかね(钱)

2.6. 数字 + 時 + 数字 + 分   L04

数字后面加上量词「時」「分」表示时刻。

时刻的读法需要注意:

  • 2、5、7、9 + 「分」:「分」读「ふん」
  • 1、3、4、6、8、10 + 「分」:「分」读「ぷん」
    • 1分:「いっぷん」
    • 6分:「ろっぷん」
    • 8分:「はっぷん」
    • 10分:「じゅっぷん」或「じっぷん」

询问时间时用疑问词「なんじ」和「なんぷん」。

Q: 今 何時ですか。(现在几点?)
A: 7時10分です。(…7点10分。)

Q: ニューヨークは 今 何時ですか。(纽约现在几点?)
A: 午前4時です。(…凌晨4点。)

2.7. 名词/形容词 + 「です」   L01

构成谓语。

  • 表示判断、断定的意义。
  • 表示说话人对听话人的礼貌的态度。

2.7.1. です的形态变化

  • 否定句中发生形态变化。

桑托斯是学生:サントスさんは 学生です。
桑托斯不是学生:
    サントスさんは 学生じゃ ありません。(日常语)
    サントスさんは 学生では ありません。(书面语)

  • 过去时态(参考第12课)中要发生形态变化。
  • “です”的礼貌形为:で ございます

2.8. 动词 + 「ます」   L04

1)起动词谓语的作用。 2)ます表示对听话人礼貌的态度。

2.8.1. ます的形态变化

「ます」用于叙述现在的习惯性的事情和真理,或未来将要发生的事情。否定形和过去时变化如下。

X 现在、未来 过去
肯定 ます ました
否定 ません ませんでした

毎朝 6時に 起きます。(每天早上6点起床。)
あした 6時に 起きます。(明天6点起床。)
けさ 6時に 起きました。(今天早晨6点起的床。)

动词+ませんか 类似反问语气(否定「ません」+疑问「か」),用于邀请,参见2.9

  1. 过去式   L07

    常用句式为 もう 动词ました 已经做完XXX了。

    动词ませんでした 表示过去没做过某件事,不表示还没做的事。因此如果提问过去做过XXX吗?不能用「动词ませんでした」作否定回答,而应该用「いいえ、まだです」:

    Q: もう 荷物を 送りましたか。(行李已经送去了吗?)
    A1:はい、[もう]送りました。(…是,已经送去了。)
    A2:いいえ、まだです。(…不,还没有。)

2.9. 动词+ませんか   L06 L10

  1. 用于邀请对方:

    Q: いっしょに 京都へ 行きませんか。(不一起去京都吗?)
    A: ええ、いいですね。(…好啊!)

    「动词+ませんか」和「动词+ましょう」都是邀请对方的说法,但「动词+ませんか」显得更礼貌、更尊重对方。

  2. 名词は ありませんか(有XXX么):考虑到对方可能没有的一种委婉的问话,表现出说话人的礼貌。

2.10. 动词+ましょう   L06

  1. 用于积极的提议、邀请对方:

    ちょっと 休みましょう。(稍微休息一下吧。)

  2. 用于积极地响应提议、邀请:

    Q: いっしょに 昼ごはんを 食べませんか。(不一起吃午饭吗?)
    A: ええ、食べましょう。(…好,一起吃吧!)

「动词+ませんか」和「动词+ましょう」都是邀请对方的说法,但「动词+ませんか」显得更礼貌、更尊重对方。

3. 词性

3.1. 助词

日语助词用于连接两种语词,确立它们之间的关系,或是添加词语的意义。助词只能附加在其他词语之后,不能单独使用,而且本身不会产生变化。1

3.1.1. 格助词

通常接在名词之后,表示逻辑关系。名词的主格、受格、所有格都是使用相同的格助词,可使句中的名词的位格不受语序的影响,在意义上较为明确。


    1. 表示宾语:名词+を+及物动词   L06

      用助词「を」(发音和「お」相同,只用作助词)表示及物动词的直接宾语:宾语+を+及物动词

      ジュースを 飲みます。(我喝果汁。)

      特别注意!日语及物动词 「します」 可以接很多名词做宾语,有点像do、play,意思是实行宾语所表示的内容。后可接:

      • 运动、游戏等

        サッカーを します。(踢足球)
        トランプを します。(打扑克)

      • 集合、活动等

        パーティーを します。(举行晚会)
        会議を します。(召开会议)

      • 其他

        宿題を します。(做作业)
        仕事を します。(干工作)

      带宾语的动词原则上用助词「を」标明宾语,但在形容词、动词表示嗜好、欲求、能力、所有等时,用助词「が」。

      1. 对宾语进行提问

        询问要做什么:何を しますか (「何」读作「なに」)

        Q: 月曜日[は] 何を しますか。(星期一干什么?)
        A: 京都へ 行きます。(…去京都。)

        日期等表示时间的词加上「は」可以提示主题,起强调作用。

        Q: きのう 何を しましたか。(昨天做了什么了?)
        A: サッカーを しました。(…踢足球了。)


    1. 提示宾语:名词+が+谓语(嗜好、欲求、能力、所有)   L09

      一般地,用助词「を」标明宾语,然而在形容词、动词表示嗜好、欲求、能力、所有等时,用助词「が」来表示对象:

      • 动词谓语:あります/わかります
      • 形容词谓语:好きです/嫌いです/上手です/下手です

        わたしは イタリア料理が 好きです。(我喜欢意大利菜。)
        わたしは 日本語が わかります。(我懂日语。)
        わたしは 車が あります。(我有车。)

    2. 提示主语:名词が あります/います   L10

      表述事物或人的存在,相当于There be。主语用助词「が」表示。

      • 「あります」用于事物、植物等静止的主体。

        コンピューターが あります。(有一台计算机。)
        桜が あります。(有樱花树。)

      • 「います」用于人或动物等能移动的生物

        男の 人が います。(有一个男人。)
        犬が います。(有一只狗。)

      如果要表示名词存在的场所,用助词「に」,详见此处 3.1.1.3.3

      わたしの 部屋に 机が あります。(我的房间里有桌子。)
      事務所に ミラーさんが います。(米勒在事务所里。)


    1. 表时间(at/on/…):名词(时间)+(に)+瞬间动词   L04

      表示动作发生的时间,和瞬间动词一起使用。

      表示时间的名词有:

      • 表示星期:「に」可用可不用。

      日曜日[に] 奈良へ 行きました。(星期天去奈良。)

      • 含有数字:必须用「に」

      6時半に 起きます。(6点半起床。)
      7月2日に 日本へ 来ました。(7月2日来了日本。)

      • 不含有数字且不表示星期:不用「に」。

      きのう 勉強しました。(昨天学习了。)

      Q: いつ 広島へ 行きますか。(什么时候去广岛?)
      A: 来週 行きます。(…下周去。)

    2. 表目标、对象:名词(人)+に+动词   L07
      1. 动词从做出动作的人的角度出发:「あげます」(给 give)「かします」(借给 lend)「おしえます」(教 teach),助词「に」表示接受动作的对象(to/for):

        山田さんは 木村さんに 花を あげました。(山田送花给木村。)
        イーさんに 本を 貸しました。(把书借给小李。)
        太郎君に 英語を 教えます。(教太郎英语。)

        如果接受动作的对象是地点名词,助词也可用「へ」(这样的动词有「おくります」(寄送)「でんわを かけます」(打电话)):

        会社に 電話を かけます。(给公司打电话。)
        会社へ 電話を かけます。(给公司打电话。)

      2. 动词从承受动作的人的角度出发:「もらいます」(得到 receive)「かります」(借得 borrow)「ならいます」(学习 learn),助词「に」表示做出动作的对象(from):

        木村さんは 山田さんに 花を もらいました。(木村收到了山田送的花。)
        カリナさんに CDを 借りました。(我跟卡莉娜借了CD)
        ワンさんに 中国語を 習います。(跟小王学习汉语。)

        此时,「に」可以用「から」(from)代替。注意!做出动作的对象是组织不是人时,只能用「から」。

        木村さんは 山田さんに 花を もらいました。(木村收到了山田送的花。)
        木村さんは 山田さんから 花を もらいました。(木村收到了山田送的花。)
        銀行から お金を 借りました。(从银行借了钱。)

      这类句型结构可概括为 主语+は+间接宾语+に+直接宾语+を+动词 ,对照英语来看会更容易理解:

      山田さんは 木村さんに 花を あげました。
      Yamada gave flowers to Kimura.
      山田送花给木村。

      木村さんは 山田さんに 花を もらいました。
      Kimura recieved flowers from Yamada.
      木村收到了山田送的花。

      可见,英语中语序为 主语+动词+直接宾语+介词+间接宾语 ,除了主语都在最前之外,其他的顺序基本是完全颠倒的。

      在英语中,表示动作的接受方和发起方有to和from两个介词,但是日语中只有「に」一个助词,必须根据动词的性质来判断「に」前面的名词究竟是动作的接受方和发起方。

    3. 表场所:名词(场所)+に+动词   L10

      用「に」表场所,强调的是在某个场所这一 状态 ,常用句型有:

      • XX在哪里/哪里有XX(There be): 表示「XX在哪里/哪里有XX」有2种说法,详见此处 3.1.1.2.2

        • 名词1(场所)に 名词2が あります/います
          • 说明:名词2在名词1

            わたしの 部屋に 机が あります。(我的房间里有桌子。)
            事務所に ミラーさんが います。(米勒在事务所里。)

          • 变疑问句:询问某个地方有什么或者有谁。疑问词:
            • 问事物:「なに」
            • 问人:「だれ」

              Q: 地下に 何が ありますか。(地下有什么?)
              A: レストランが あります。(…有一个餐厅。)

              Q: 受付に だれが いますか。(有谁在接待处?)
              A: 木村さんが います。(…木村在。)

        • 名词1は 名词2(场所)に あります/います
          • 说明:名词1在名词2。说话人将名词1作为主题,必须是说话人和听话人双方都明白的事物或人。提示主题用助词「は」,而不用提示主语的「が」。

            東京ディズニーランドは 千葉県に あります。(东京迪斯尼乐园在千叶县。)
            ミラーさんは 事務所に います。(米勒先生在事务所。)

          • 变疑问句:询问XXX在哪里。疑问词:どこ

            東京ディズニーランドは 千葉県に あります。→
            Q: 東京ディズニーランドは どこに ありますか。(东京迪斯尼乐园在哪里?)
            A:千葉県に あります。(…在千叶县。)

            ミラーさんは 事務所に います。→
            Q: ミラーさんは どこに いますか。(米勒先生在哪里?)
            A: 事務所に います。(…在事务所。)

          • 补充:动词句中谓语清楚的情况下可以用「です」代替动词谓语。该句型也可用 名词1は 名词2(场所)です 代替。参见此处解释名词2为场所的情况:1.1.1.1

            Q: 東京ディズニーランドは どこに ありますか。(东京迪斯尼乐园在哪里?) A1:千葉県に あります。(…在千叶县。) A2:千葉県 です。(…千叶县。)

            ミラーさんは 事務所 です。→ Q: ミラーさんは どこですか。(米勒先生在哪里?) A: 事務所 です。(…在事务所。)

        这2种句型可以互相转化:

        米勒先生在事务所:
          事務所に ミラーさんが います。
          ミラーさんは 事務所に います。

      1. 表场所时,「に」和「で」的区别

        名词(场所)+で/に+动词:

        • に:强调在某个场所这一 状态
        • で:强调在哪里干什么这一 动作

        花を庭で植える→把花种在了院子,强调 这个动作
        花を庭に植える→在院子里种了花,强调 花在院子 这个状态


    1. 表方向(to):名词(场所)+へ+移动动词   L05

      助词「へ」(读作「え」)表示移动的方向,移动动词包括:行きます/来ます/帰ります。

      京都へ 行きます。(我去京都。)
      日本へ 来ました。(我来到了日本。)
      うちへ 帰ります。(我回家。)

    2. 表对象(to):名词(地点)+へ+动作动词   L07

      助词可用「へ」可用「に」,这样的动词有「おくります」(寄送)「でんわを かけます」(打电话),地点名词为动作的接受者,:

      会社に 電話を かけます。(给公司打电话。)
      会社へ 電話を かけます。(给公司打电话。)


    1. 表方式(by):名词(工具、语言等)+で+动词   L05 L07
      1. 表示交通手段:名词(交通工具)+で+移动动词(行きます/来ます/帰ります):

        電車で 行きます。(坐电车去。)
        タクシーで 来ました。(坐出租车来的。)
        駅から 歩いて 帰りました。(我从车站走回来的。)

        徒步行走时,用「あるいて」表示,不用助词「で」。

      2. 表示一般性手段:名词(工具/手段)+で+动词

        はしで 食べます。(用筷子吃饭。)
        日本語で レポートを 書きます。(用日语写报告。)

        • 询问某个词或句子用别的语言怎么说:“词/句”は ~語で 何ですか

          Q: 「ありがとう」は 英語で 何ですか。(“ありがとう”用英语怎么说?)
          A: 「Thank you」です。(…是“Thank you”。)

    2. 表场所(at/in/…):名词(场所)+で+动词   L06 L10

      用「で」表动作发生的场所,强调的做的 动作

      駅で 新聞を 買います。(在车站买报纸。)

      表场所时,助词可用で或に,区别详见此处:3.1.1.3.3.1

      表场所的名词,也可由 名词1の 方位名词 表示:

      • 方位名词:うえ、した、まえ、うしろ、みぎ、ひだり、なか、そと、となり、ちかく、あいだ

      机の 上に 写真が あります。(桌子上有照片。)
      郵便局は 銀行の 隣に あります。(邮局在银行的旁边。)
      駅の 近くで 友達に 会いました。(在车站附近见到了朋友。)


    1. 和(and):*名词1+と+名词2*   L04

      「と」即为「和」,用于名词并列。

      銀行の 休みは 土曜日と 日曜日です。(银行的休息日是星期六和星期天。)

    2. 表共事者,和XX一起(with): 名词(人/动物)+と+动词   L05

      一起做某种动作的人(动物)用助词「と」表示。

      单独行动时,用「ひとりで」表示。这时,不用助词「と」。

      家族と 日本へ 来ました。(我和家人一起来到了日本。)
      一人で 東京へ 行きます。(一个人去东京。)

  1. から

3.1.2. 接续助词

表示前后语句的关系是顺接、逆接或单纯叙述的词语。

  1. が(but)   L08

    句子1が、句子2 :「が」表转折:但是。两个句子由「が」连接成为一个句子。

    日本の 食べ物は おいしいですが、高いです。(日本的食品很好吃,可是很贵。)

    顺承关系用「そして」连接:而且、然后(and)

  2. 句子1から、句子2   L09

    由「から」(because) 将两个句子连接成一个句子。句1是句2的原因。也可以先陈述句2,再说句1から,补充陈述理由。

    時間が ありませんから、新聞を 読みません。(没有时间,所以不看报。)

    Q: 毎朝 新聞を 読みますか。(每天看报纸吗?)
    A: いいえ、読みません、時間が ありませんから。(…不看,因为没有时间。)

    「から」也可以单用,解释原因。

3.1.3. 终助词

通常放在句尾,表示说话者主观的情感。

  1. か   L01 L10
    1. 表示疑问、质疑、反诘: 句子か ,读作升调
    2. 表示确认: 单词ですか , 读作降调

      Q: すみません。ユニューヤ·ストアは どこですか。(对不起,请问输入屋商店在哪里?)
      A: ユニューヤ·ストアですか。あの ビルの 中です。(…输入屋商店吗?在那座大楼里。)

  2. 句子+ね   L04

    表示确认:

    1. 对对方同情的心情

      Q: 毎日 10時ごろまで 勉強します。(每天学习到10点左右。)
      A: 大変ですね。(…真不容易啊。)

    2. 期待对方同意的心情,起确认作用

      Q: 山田さんの 電話番号は 871の 6813です。(山田的电话号码是871-6813。)
      A: 871の 6813ですね。(…是871-6813啊。)

  3. 句子+よ   L05

    「よ」用于句末,告诉对方不知道的事情,强调自己的判断和意见,语气较强。

    Q: この 電車は 甲子園へ 行きますか。(这路电车去甲子园吗?)
    A: いいえ、行きません。次の 普通ですよ。(…不去。下一趟慢车去。)

    無理な ダイエットは 体に よくないですよ。(不适当的减肥对身体可有害呀![第19课])

3.1.4.

做助词时读作「わ」

  1. 提示主题:名词(时间)+は   L01 L06

    わたしは マイく·ミラ一です。(我是迈克·米勒。)
    山田さんは 事務所です。(山田在事务所。)

    日期等表示时间的词加上「は」可以提示主题,起强调作用。此时「は」可省略。

    星期一干什么?:
      + 月曜日 何を しますか。
      + 月曜日は 何を しますか。

3.1.5.

  1. 与前文陈述相同: 名词1+も   L01

    表示……也怎样的时候,用「も」代替「は」。

    ミラーさんは 会社員です。グプタさんも 会社員です。
    米勒是公司职员。古普也是公司职员。


    ミラーさんは 会社員じゃ ありません。グプタさんも 会社員じゃ ありません。
    米勒不是公司职员。古普也不是公司职员。

  2. 完全否定疑问词所问的全部范畴: 疑问词+も+否定式   L05

    どこ[へ]も 行きません。(哪里也不去。)
    何も 食べません。(什么也不吃。[第6课])
    だれも いません。(谁也不在。[第10课])

3.1.6.

  1. 名词1や 名词2[など]   L10

    助词「や」在列举名词时使用。注意与「と」进行对比:

    • 「と」是全部列举。「Aと B」相当于「A and B」
    • 「や」只列举有代表性的几个,并未列举完全。最后一个名词后可接「など」,以便更清楚地说明除了列举的以外还有别的。「Aや B」/「Aや Bどが」相当于「A, B and so on」

    箱子里有信和照片:箱の 中に 手紙と 写真が あります。
    箱子里有信和照片等:
       + 箱の 中に 手紙や 写真などが あります。
       + 箱の 中に 手紙や 写真な あります。

3.2. 形容词

3.2.1. 分类   L08

根据活用方式分为「い形容词」和「な形容词」。

  • い形容词:形容词原形以「い」结尾,且以「い」发音结尾
  • な形容词:除上述情况外,活用要加「な」

3.2.2. 用法   L08

可活用,有两种用法:

  1. 做谓语
  2. 修饰名词:形容词+名词
  1. 做谓语
    1. 非过去时肯定形式

      な形容词去掉「な」,い形容词用原形(~い)与「です」接续,即:

      • な形容词[ ] です
      • い形容词(~い)です

      親切[な]→
      ワット先生は 親切です。(瓦特老师很和气。)

      高い→
      富士山は 高いです。(富士山很高。)

    2. 否定形式
      • な形容词[ ]じゃ ありません(日常语)
      • な形容词[ ]では ありません(书面语)
      • い形容词( ~い )くないです

      静か[な]→
      あそこは 静かじゃ ありません。(日常语:那里不安静。)
      あそこは 静かでは ありません。(书面语:那里不安静。)

      おもしろい→
      この 本は おもしろくないです。(这本书没意思。)

      特别地:「いいです」的否定形式→「よくないです」。

  2. 修饰名词:形容词+名词
    • な形容词な 名词
    • い形容词(~い) 名词

    親切[な]→
    ワット先生は 親切な 先生です。(瓦特老师是很和气的老师。)

    高い→
    富士山は 高い 山です。(富士山是一座高山。)

3.3. 副词   L08 L09

修饰形容词或动词,放在被修饰词前面。

修饰形容词:

程度 肯定 否定
とても:很  
  少し(すこし) あまり:不太
  全然(ぜんぜん)

ペキンは とても 寒いです。(北京很冷。)
ここは 少し 寒いです。(这里有点冷。)
シャンハイは あまり 寒くないです。(上海不太冷。)
あの 映画は 全然 おもしろくないです。(那部电影很无聊。)

修饰动词:

程度 肯定 否定
よく  
  だいたい  
  少し(すこし) あまり
  全然(ぜんぜん)

英語が よく わかります。(我精通英语。)
英語が 少し わかります。(我懂一点英语。)
英語が あまり わかりません。(我不太懂英语。)

肯定 否定
たくさん  
  少し(すこし) あまり
  全然(ぜんぜん)

お金が たくさん あります。(有很多钱。)
お金が 全然 ありません。(一点钱也没有。)

频率 肯定 否定
いつも  
  よく  
  時々(ときどき)  
  偶に(たまに) あまり
  全然(ぜんぜん)

4. 常用语

4.1. 初次见面   L01

  • はじめまして/初めまして(初次见面)
  • どうぞ よろしく おねがいします/どうぞ よろしく お願いします(请多关照):自我介绍时的用语
  • おなまえは?/お名前は?(您贵姓?)
  • こちらは ~さんです。(这位是XXX)
  • ~から きました。/~から 来ました。(我从~来的。)

4.2. 寒暄语   L02

  • これから お世話に なります/これから おせわに なります/今后请您多关照。
  • こちらこそ よろしく/得请您多关照。(用于被人说「 どうぞ よろしく」时)
  • お元気ですか/おげんきですか/你好吗?/你身体好吗?

4.3. そうですか   L02

  1. 降调:在听到新的信息时,用这句话表示知道了,「我明白了」。

    A:この 傘は あなたのですか。(这把伞是你的吗?)
    B:いいえ、違います。シュミットさんのです。(…不是,它是胥米特的。)
    A:そうですか。(哦,是吗。)

  2. 升调:表示疑问,「是吗?」

4.4. 询问XX怎么样?

4.4.1. [~は]いかがですか   L07

你觉得[~]怎么样?(向人推荐某物时用)

4.4.2. 名词は どうですか   L08

询问对方对经历过的事情、到过的地方,见过的人有什么印象,意见和感想。

Q: 日本の生活はどうですか。(在日本的生活怎么样?)
A: 楽しいです。(…很愉快。)

4.4.3. 名词1は どんな 名词2ですか   L08

具体询问名词1是怎样的,名词2是名词1的属性。

Q: 奈良は どんな 町ですか。(奈良是什么样的城市?)
A: 古い 町です。(…是古老的城市。)

4.5. 做客用语   L07 L08

そろそろ 失礼します/そろそろ しつれいします/我该告辞了。

また いらっしゃって ください//欢迎再来。

[~、]もう 一杯 いかがですか/もう いつばい いかがですか/再来一杯[~]怎么样?

いいえ、けっこうです//不用了,够了。(用于委婉拒绝对方的劝诱)

ごめんください//对不起。/有人在家吗?/我可以进来吗?(去别人家时用)

いらっしゃい//欢迎。(对来宾表示欢迎时的寒暄)

どうぞ お上がりください/どうぞ おあがりください/请进。

4.6. 感谢   L02 L04 L05 L07

A: 谢谢。

どうも/①/谢谢。
[どうも]ありがとう [ございます]//[十分]感谢。/[多]谢您。
[どうも]ありがとう ございました//非常感谢。/谢谢了。

B:不客气。/哪里哪里。

どう いたしまして//不客气。/哪里哪里。
いいえ

いただきます//谢谢。/我不客气了。(吃饭前的客套话)

4.7. 抱歉   L01 L03

しつれいですが/失礼ですが(冒昧问一下)

すみません//对不起。请问。(招呼人时)

失礼します/しつれいします/对不起。/打搅了。

5. 更新历史

  • [2016-05-03 二] 总结《大家的日本语1》第10课 语法知识
  • [2016-05-01 日] 总结《大家的日本语1》第9课 语法知识
  • [2016-04-30 六] 总结《大家的日本语1》第8课 语法知识
  • [2016-04-25 一] 总结《大家的日本语1》第7课 语法知识
  • [2016-04-17 日] 总结《大家的日本语1》第6课 语法知识
  • [2016-04-08 五] 总结《大家的日本语1》第5课 语法知识
  • [2016-04-01 五] 总结《大家的日本语1》第4课 语法知识
  • [2016-03-17 四] 总结《大家的日本语1》第3课 语法知识
  • [2016-03-13 日] 总结《大家的日本语1》第2课 语法知识
  • [2016-03-12 六] 总结《大家的日本语1》第1课 语法知识

Date: 2016-03-12 六 00:00

Validate

本文旨在介绍日语中长音的书写和发音规则。

之前学习的都是短音,占一拍,具体情况如下:

  • 短音:占1拍
    • 1个假名占1拍:清音、浊音、半浊音、拨音
    • 1大+1小=1拍:拗音
  • 长音:占2拍(其实还是每个假名占一拍,只不过前面的一拍拖长,覆盖后面一拍,总共是2拍)

1. 书写规则

1.1. 平假名中的长音

以下五种情况需要拖长读成2拍:

  1. あ段+あ
  2. い段+い
  3. う段+う
  4. え段+い/え
  5. お段+う/お

<!– more –>

1.2. 片假名中的长音

片假名的长音规则很简单,看到 片假名 + ー 就读成长音。

其中,ー 为长音符,表示拉长前面一拍假名的发音。打字的时候输入减号 - 即可打出长音符。

2. 发音实例

2.1. 长音降调

类比汉字四声

  • おばあさん ② 老奶奶 お婆さん

    ばあ拼在一起读2拍,但因为从ば开始降调,读出来像四声:

  • ちゅうごく ① 中国

    ちゅ为拗音,一大一小两个假名合在一起占一拍,所以声调是从ちゅ后下降,同样读出四声的感觉:

  • ケーキ ① 蛋糕 cake

2.2. 长音升调

类比汉字二声

  • けいえい 零调 経営

    けい和えい都是长音,各占2拍,けい要读出二声的感觉:

  • おおきい ③ 大きい

    同样是2个长音,前者升,后者降:

3. 更新历史

  • [2016-02-05 五] 拟定初稿

Date: 2016-02-05 五 00:00

Validate

本文旨在讨论Windows平台下压缩PNG的软件。

  • 测试平台:win8.1
  • 测试文件:45个PNG文件,共计811.2K。
  PNGGauntlet PngOptimizer PNGOUTWin MinifyPNG
开发商 PNGGauntlet psydk ardfry shuax
使用 免费 免费 30天试用 免费
算法 DeflOpt、optipng和pngout     zopfli
安装后程序体积 1.3M 315.8K 719.9K 43.5K
压缩后图片体积 167.7K(无损) 153.1K 167.9K 148.9K
其他功能 JPG, GIF, TIFF, BMP转换为PNG BMP, GIF, TGA转换为PNG,支持APNG    
备注 Requires .NET 4.0      

1. 更新历史

  • [2016-01-30 六] 拟定初稿

Date: 2016-01-30 六 00:00

Validate

本文旨在介绍如何在GitCafe上搭建Hexo博客

GitCafe 项目已迁移至Coding.net1,2016年 5月 31日 后 GitCafe 的所有项目都将被永久删除。在Coding.net上部署Hexo博客的文章正在完善中。

  1. 创建新项目
    • 项目名和拥有者要一致。

    • 创建「公开项目」而不是「私有项目」
  2. 为GitCafe设置 SSH公钥 ,参见 添加 SSH 公钥 - GitCafe Help
  3. 在站点配置文件 _config.yml 添加如下代码(将 yuchen-lea 替换为自己的用户名即可):

    1
    2
    3
    4
    deploy:
    type: github
    repository: git@gitcafe.com:yuchen-lea/yuchen-lea.git
    branch: gitcafe-pages

    注意:

    • : 后一定要有空格
    • branch的值一定要是 gitcafe-pages ,否则上传完成后网页显示不成功2
  4. hexo d -g 上传到 gitcafe 。因为是用的SSH公钥,部署时也不用输入密码啦~
  5. 上传完成后,访问 user_name.gitcafe.io 看看站点是否部署成功。

1. 更新历史

  • [2016-01-30 六] 拟定初稿

Date: 2016-01-30 六 00:00

Validate