它直接在JavaScipt中实现。 它不使用GoogleWebToolkit或任何大型JavaScript库。 经过测试,它可以在以下浏览器中工作: 在Mac上:Firefox 3.5和3.6、Safari 4.0、Opera 10.10和 谷歌浏览器4.0.249.49。 在Linux上:Firefox 3.0.18和3.5,Opera 10.10。 在Android Dev手机上:Android Mobile Safari 3.0.4和3.1.2 和Android Opera Mini 4.2。
在Internet Explorer 7中似乎不起作用 (存在样式和脚本问题)。 Chrome 5.0.342.9β中似乎存在一些渲染错误。 该实现由两个JavaScript文件组成: 迷你酒吧.js 和 支持.js 后者也用于 几个 小型web应用程序 基于 SALDO网络服务 . 要访问GF web服务,它使用 JSONP方法 GF中提到 web服务文件,它允许web应用程序托管在不同的服务器上 来自GF web服务。 (为了演示这一点,我打开了Minibar演示 www.cs.chalmers.se,当它调用的GF服务器处于打开状态时 www.grammaticalframework.org) 作为实验,它没有使用 语法.xml 文件, 而是调用一个小小的CGI脚本, 语法.cgi 其中以JSONP格式列出了目录中的.pgf文件。 (注意:如果您想在自己的计算机上安装, 如果你点击链接, CGI脚本将下载为 语法.cgi.txt , 但应该叫它 语法.cgi 并存储在服务器上 在与语法文件相同的目录中。 让CGI脚本与lighttpd协同工作, “mod_cgi” 需要 包含在 服务器模块 在中 lighttpd.conf灯 文件。)
【新增2010-02-16】有一个生成随机句子的按钮。 【新增2010-02-23】显示所有翻译,不仅仅是第一个, 如果有多个解析。 【新增2010-02-25】每个翻译旁边都有一棵小树 图标,您可以单击该图标查看抽象语法树或 解析树。 如果单击图形,它会折叠回树图标。 [新增2010-04-09]支持不同方式访问 语法:目前我们通过JSONP访问PGF服务器,但我也想 支持AJAX和本地/下载的JavaScript语法。 [新增2010-04-19]当您点击时,会出现一个文本输入字段 句子区域(带虚线边框)。 这允许您通过以下方式输入单词 在键盘上打字。 当你开始键入与之不匹配的单词时 您正在键入的内容被删除。 当只剩下一块磁铁时,可以按enter键 完成单词。 【新增2010-04-19】有一个选择输出语言的菜单: 您可以选择“全部”以翻译为所有可用语言,也可以选择一种 特定语言。 [新增2010-04-19]您可以将选项传递给函数 启动最小值 自定义用户界面。 默认值为 {显示摘要:true,显示树:true} 显示抽象语法 并显示图标,下一步展开到语法/解析树 每个翻译。 通过将字段设置为,可以关闭这些功能 假 . 【新增2010-04-30】如果只有一个语法菜单,则省略语法菜单 语法列表中的语法。 【新增2010-04-30】硬接线常数更少,新增 启动最小值 选项(服务器、语法url、语法列表、, show_grouped_translations,delete_button_text)进行 迷你酒吧.js 更加可靠。) [新增2010-05-26]磁铁现在由 <输入类型=按钮> 标签,使其在更多信息中可点击 浏览器。 [新增2010-05-26]文本输入字段现在从一开始就可见, 当句子中不能再添加单词时,它会被删除。 当你 按enter,如果只剩下一块磁铁,则会添加一个单词, 或 如果您输入的内容与其余内容完全匹配 磁铁。 [添加2010-05-28]添加了一个链接,以便在中尝试相同的句子 谷歌翻译 。这可以是 通过传递选项关闭 {try_google:false} 到 启动最小值 . [添加2010-06-02]添加了对帮助和反馈按钮的支持,受控 按选项 反馈url 和 帮助url 传递给 启动最小值 . [新增2010-06-02]新选项: 默认源语言 . [新增2010-09-10]迷你吧现在自动使用 XHR公司 在可能的情况下(即当HTML文档和 PGF服务位于同一服务器上)。 [新增2010-09-10]默认输入语言现在是用户的首选 语言,如果可能的话。 这是通过咨询 用户语言 pgf-server输出的语法信息中的字段。 [新增2010-10-27]键盘输入和完成现在应该很有效 更平稳: 按空格键时,当前单词将完成(如果不完整) 然后就会产生一块新的磁铁。 如果有多个可能 完成后,不会创建磁铁,但可能的通用前缀 补全项将添加到文本框中。 而不是每次新的 字母被添加到当前单词中,迷你吧只要求完成 整词,然后在输入更多字母时本地筛选列表, 当服务器响应较慢时加快速度。
[新增2010-10-27]代码重组: [新增2010-11-09]一些新文件: gf-web-api-examples.html : 演示提供的PGF服务器API的示例 pgf在线.js . 示例.html :web的一个最小示例 使用的页面 pgf在线.js 与 PGF服务器。
[添加2011-03-03]添加了一个按钮以显示单词对齐。 [已更改2011-03-22]不要将焦点强制放在键入的输入字段上 在每个单词之后。 在基于触摸的设备上,屏幕键盘保持 每个单词后都会弹出,如果你是 通过点击磁铁输入句子。 [已更改2011-08-03]将minibar.html中的初始化代码移动到 迷你工具栏联机.js . 【2011年8月8日更改】为了提高模块性和可重用性, 已从迷你工具栏对象中分解出两个较小的对象: 输入和翻译。 这些文件放在两个单独的文件中: 迷你工具栏输入.js 和 迷你工具栏翻译.js . 一些常见的辅助功能也已移至单独的文件中: 迷你吧_支持.js . [添加2011-08-09]添加了一些 迷你吧API 文档。 [已更改2011-08-22]允许输入文字的快速修复程序: 如果按Enter键,则将接受当前单词,即使没有 匹配完成。 (你现在可以在信中造句时使用人名 例如,语法。) [新增2011-10-18]新增了一个按钮,用于显示一些语法信息和 启动类别菜单。 启动类别菜单可以通过以下方式关闭 选项 {startcat_menu:false} 启动迷你吧时。 [新增2012-02-10]新迷你吧选项 首字母_语法 到 控制最初选择的可用语法。 [添加2012-03-08]添加选项 {tree_img格式: 柔性制造技术 } 便于选择 “gif” , “png” 或 “svg” 输出 对于抽象synax树,解析树和单词对齐图。 [新增2012-03-19]Minibar现在可以记住最近使用的语法 并在您下次返回迷你吧时自动选择它。 (这是使用localStorage实现的,即数据存储在本地 用户的设备。) [新增2012-03-26]支持将多个服务器中的语法添加到 语法菜单。 您还可以从 当然是同一个服务器。 包含的迷你吧配置文件添加了 语法编辑器中用户自己的语法。 【新增2012-04-02】 逐字替换 : 当一个完整的和 输入了明确的句子,单词发出蓝色的光芒,当你 单击其中一个,可能出现替换项。 (替换显示为名称 抽象语法中的函数。 它们应该显示为单词 而是在具体语法中。) 当你点击替换词时, 句子用新词重新构建,调整其他单词 根据需要达成协议。 通过传递 选项 {word_replacements:真} 启动迷你吧时。 【新增2012-04-03】 如果您离开迷你吧并稍后返回,则之前的输入将为 恢复。 每个语法记住一个输入字符串,因此您也可以切换 在语法之间来回切换而不丢失输入。 (这是使用localStorage实现的,即数据存储在本地 用户的设备。) [新增2012-04-04]语法编辑器集成:作为 单词对单词替换界面,迷你吧现在可以显示一个按钮 用一个新词扩展语法。 通过传递 选项 {extend_grammar: 函数 } 启动时 迷你吧,其中 函数 是要调用的编辑器函数 (待进一步记录)。 [添加2012-04-18]添加了按钮以使用生成的翻译作为输入。 (此功能在原始冰箱诗中可用,但具有 一直在迷你吧失踪,直到现在。) [新增2012-11-23]增加了对在 minibar和新的语法树编辑器。 中的默认配置 迷你工具栏联机.js 显示了如何启用它。 [新增2012-11-29]按下 我 按钮查看 语法信息,现在有一个 更多信息 按钮以获取 有关中所有类别和功能的详细信息 语法。 [新增2013-03-25]初始支持选择任意子集 出现在翻译和单词对齐中的语言 图表。 [新增2013-03-26]解析树可视化:单击一次显示解析 没有函数名的树。 再次单击以添加函数名。 [新增2013-03-27]单击线性化以获得包含所有 变体和形式。 再次单击以隐藏表格。 [新增2013-04-02]抽象语法树可视化:单击一次 显示没有类别名称的抽象语法树。 再次单击以添加 类别名称。 【新增2013-04-02】迷你吧现在可以记住从一次访问到下一次访问 每个语法的选定目标语言集。 [新增2019-08-05]Minibar现在可以显示语法文档。 文档来自一个名为 语法 .pgf_信息 ,位于 旁边的 语法 .pgf(磅/平方英尺) 服务器上的文件。 文档的第一行显示在中的菜单栏下方 迷你吧。 按下时,将显示文档的其余部分 这个 更多信息 按钮(或 我 按钮)。 文件 可以包含HTML标记。 空行被视为段落分隔符。 [新增2019-11-21]现在可以配置首选列表 语法。 当用户访问Minibar时,会选择首选语法 第一次。 (和以前一样,Minibar会记住所选的语法 未来的访问。) 可以在中指定首选语法列表 配置.js 在中 …/迷你吧 服务器上的目录,例如: preferred_grammars=[“/grammars/Foods.pgf”,“/grammars/ResourceDemo.pgf”] 使用列表中的第一个可用语法。