Coffeescript 如何在Atom中获取活动文件的名称?

Coffeescript 如何在Atom中获取活动文件的名称?,coffeescript,atom-editor,Coffeescript,Atom Editor,我想获取Atom 1.0包中当前文件的名称。我知道如何获取文件的完整路径,但我只想获取路径中文件名的一部分。这是我迄今为止的代码(摘自): 我试着通读文档,看看这样的属性是否已经存在,但窗格项并没有尽我所能记录下来。是否有其他地方提供的文件 如果没有属性,是否有适当的标准函数用于以平台无关的方式从filepath提取路径的文件部分?使用file.getBaseName()。这将只返回文件路径的文件名部分。我通过将文件记录到控制台并检查其属性发现了这一点 editor = atom.workspa

我想获取Atom 1.0包中当前文件的名称。我知道如何获取文件的完整路径,但我只想获取路径中文件名的一部分。这是我迄今为止的代码(摘自):

我试着通读文档,看看这样的属性是否已经存在,但窗格项并没有尽我所能记录下来。是否有其他地方提供的文件

如果没有属性,是否有适当的标准函数用于以平台无关的方式从
filepath
提取路径的文件部分?

使用
file.getBaseName()
。这将只返回
文件
路径的文件名部分。我通过将文件记录到控制台并检查其属性发现了这一点

editor = atom.workspace.getActivePaneItem()
file = editor?.buffer?.file
filename = file?.getBaseName()
您还可以使用node.js
path
模块的
basename
函数

path = require('path')

editor = atom.workspace.getActivePaneItem()
file = editor?.buffer?.file
filename = path.basename(file?.path)

@jacwah提供的方法不再适用于atom 1.18。根据路径,您可以使用以下代码获取路径:

atom.workspace.getActiveTextEditor()?.getPath()
使用.getTitle():


这可能是可行的,但如果用户自定义了它或实际保存了一个名为“untitled”的文件,该怎么办<代码>getPath似乎更合适。getBaseName仍然有效,但在编辑器上无效@jacwah在editor.buffer.file对象上提到了这个函数。访问编辑器的方式已更改,没有文件对象<代码>atom.workspace.getActiveTextEditor().buffer.file.getBaseName()工作得非常好。
在代码中做什么?如果我包括它,我会得到一个错误。
atom.workspace.getActiveTextEditor()?.getPath()
atom.workspace.getActiveTextEditor()?.getTitle()