天道酬勤,学无止境

How to implement an auto-complete for a text editor written in java?

I'm trying to create a text editor like program for coding in mips assembly using java , the point i got mixed up alittle was the part i was trying to provide a Control-Space feature like that of eclipse's.For example when the user enters add $s1 , then presses ctrl+Space , i would replace this string:"add $s1 , $s2 , $s3" with what he has typed! ( that's an example .. i know add can be of immediate type instructions :D ), I'm using a hashmap to bind key strokes to what will actually happen in my JTextPane , sth like :

InputMap inputMap = textPane.getInputMap();
KeyStroke key = KeyStroke.getKeyStroke('some keys') ;
inputMap.put(key, 'some action') ;

well the problem is , when i want to implement Ctrl+Space for my program , i am using this :

key = KeyStroke.getKeyStroke(Event.CTRL_MASK , KeyEvent.VK_SPACE) ;
inputMap.put(key, DefaultEditorKit.insertContentAction);

but where can I select , what string should be inserted instead of the already typed part of the pattern ? other words , where does the insertContentAction bring it strings from ? how can i define what String should be replaced ? or even is there any other better ways for replacing , when Ctrl+Space has been pressed ? (what im asking for is a way to insert the string pattern into a jTextPane , not the algorithm to implement the pattern matching )
Thanks in advance :)

评论

You can get the Document of the text pane to make tightly controlled changes such as these. The Document also has some useful events of its own that you can listen for.

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • Django开发IDE(Django development IDE [closed])
    问题 关闭。 此问题不符合堆栈溢出准则。 它当前不接受答案。 想要改善这个问题吗? 更新问题,使它成为Stack Overflow的主题。 7年前关闭。 改善这个问题 我做了一点Django开发,但所有操作都在文本编辑器中进行。 我很好奇其他人在Django开发中使用了哪些更高级的开发工具。 我习惯使用Visual Studio进行开发,并且真的很喜欢它提供的IntelliSense,代码完成和文件组织,并且希望找到可以在Django / Python环境中提供某些功能的东西(或工具组合)。 回答1 我使用Eclipse和普通的PyDev。 没有任何特定的Django功能。 我想到的最好的方法是设置运行配置文件以运行开发Web服务器。 如果添加Web工具项目(WTP),则模板中的语法将突出显示,但是与特定模板语言无关的内容将不会突出显示。 PyDev是一个不错的插件,如果您已经熟悉Eclipse并将其用于其他项目,那么这是一个不错的选择。 我记得NetBeans开始获得Python支持,但是我不知道现在在哪里。 很多人对NetBeans 6赞不绝口,但是在Java世界中,Eclipse仍然是OSS IDE的王者。 回答2 JetBrains提供了PyCharm,它支持Django和Google Apps。 看起来很有希望。 注意:如果需要Django支持
  • Python-学习笔记(一)-常见库和开发平台介绍
    Python常见库和开发平台介绍 1,库,软件包 (1),numpy :是用Python进行科学计算的基本软件包 (2),h5py:是与H5文件中存储的数据集进行交互的常用软件包 (3),matplotlib:是一个著名的库,用于在Python中绘制图表 (4),lr_utils :在本文的资料包里,一个加载资料包里面的数据的简单功能的库。 2,python开发工具: (1),Anacanda:是专注于数据分析的python发行版本,包含了 conda,python,等190个科学包及其依赖项,同时是一个强大的python开发 套件,以其集成开发环境Spyder称道,并且集成了众多Python开发库,免去了开发者版本匹配的困扰。 (2),pycharm:是一种Python IDE(集成开发环境),带有一套可以帮助用户在使用python语言开发时提高其效率的工具,比如调试,语法提亮,project管理,代码跳转,智能提示,自动完成,单元测试,版本控制,同时具有一些高级功能,以用于支持Django框架下的专业web开发。 (3),Eclipse IDE的使用:是一个开放源代码的,基于java的可扩展开发平台,只是一个框架个一组服务,用于通过插件构建开发环境。 3,python跨平台: (1),Jython:是完全采用java编写的Python解析器
  • EditPlus—一个小巧但是功能强大的文本编辑器
    EditPlus,是由韩国人编写的一款功能全面的文本、HTML、程序源代码编辑器。 EditPlus主要特点; 1.默认支持HTML、CSS、PHP、ASP、Perl、C/C++、Java、JavaScript和VBScript等语法高亮显示,通过定制语法文件,可以扩展到其他程序语言,在官方网站上可以下载(大部分语言都支持)。   2.EditPlus提供了与Internet的无缝连接,可以在EditPlus的工作区域中打开Intelnet浏览窗口。   3.提供了多工作窗口。不用切换到桌面,便可在工作区域中打开多个文档。   4.正确地配置Java的编译器“Javac”以及解释器“Java”后,使用EditPlus的菜单可以直接编译执行Java程序。  总之,EditPlus功能强大,界面简洁美观,且启动速度快;中文支持比较好;支持语法高亮;支持代码折叠;支持代码自动完成(但其功能比较弱),不支持 代码提示功能;配置功能强大,且比较容易,扩展也比较强。像PHP、Java程序等的开发环境,只要看一下资料,几分钟就可以搞定配置,很适合初学者学习 使用。有不错的项目工程管理功能。内置浏览器功能,这一点对于网页开发者来说很是方便。 狼之舞蹈在这里为大家提供一个EditPlus_3.3.1.1129的汉化绿色单文件版本, 喜欢的朋友可以直接下载,装在U盘里面,不管走到哪里都可以轻松使用。
  • 更改Eclipse自动完成(Content Assist)的行为(Changing the behavior of the Eclipse auto-complete (Content Assist))
    问题 当我在Eclipse中编程时,通常在键入点时打开自动完成\建议框(例如,在键入System.或SomeObject. ,并在输入与任何建议的相似的代码时保持打开状态)。 这就是我在说的: 我经常使用自动完成\建议框来发挥自己的优势,并且可能进行一些更改,以便在编程时提高生产率。 有什么方法可以使建议框始终可见,实时显示建议(如果没有可用建议,则显示空白框)? 有什么方法可以向建议框添加永久的自定义建议(例如,开关案例模板或诸如public String toString()类的代码行)? 有什么方法可以对建议框重新排序(例如,在通用函数之前的类私有变量,或者在System.out.println()之前的System.out.print() )? 有什么方法可以重新设计建议框-即更改其文本颜色,背景色,调整建议框窗口的大小并删除黄色的java-doc弹出窗口? 回答1 仅供参考,在Eclipse术语中,此功能称为Content Assist 。 有什么方法可以使建议框始终可见,实时显示建议(如果没有可用建议,则显示空白框)? 不,那是不可能的。 您可以随时通过Ctrl +空格键(在Mac上为Command +空格键)调用它 有什么方法可以向建议框中添加永久的自定义建议(例如,开关案例模板或诸如public String toString()之类的代码行)? 是的,您可以通过
  • ASP.NET MVC Editor-Templates/UIHint with parameters
    I've been using Editor-Templates in the past like this, by applying the following data annotation: [UIHint("SomeTemplate")] ViewModel: public class MicroViewModel { public IEnumerable<LabMicro> Micros { get; set; } [UIHint("DateTime")] public DateTime Date { get; set; } public int CaseNo { get; set; } [UIHint("SampleTypes")] public int LabSampleTypeID { get; set; } [UIHint("SampleDetails")] public int LabSampleDetailID { get; set; } } If I wanted to use a specific date picker control as opposed to the regular one, it can be implemented as follows. Example: @model DateTime? @Html.TextBox(""
  • Python相关及开发运维资料汇总
    开发相关 FLASK专区 awesome-flask https://github.com/humiaozuzu/awesome-flask 环境管理 p:非常简单的交互式 python 版本管理工具。官网pyenv:简单的 Python 版本管理工具。官网Vex:可以在虚拟环境中执行命令。官网virtualenv:创建独立 Python 环境的工具。官网virtualenvwrapper:virtualenv 的一组扩展。官网 包管理 pip:Python 包和依赖关系管理工具。官网pip-tools:保证 Python 包依赖关系更新的一组工具。官网conda:跨平台,Python 二进制包管理工具。官网Curdling:管理 Python 包的命令行工具。官网wheel:Python 分发的新标准,意在取代 eggs。官网 包仓库 warehouse:下一代 PyPI。官网Warehouse:PyPA 提供的 PyPI 镜像工具。官网 bandersnatchdevpi:PyPI 服务和打包/测试/分发工具。官网localshop:本地 PyPI 服务(自定义包并且自动对 PyPI 镜像)。官网 分发 PyInstaller:将 Python 程序转换成独立的执行文件(跨平台)。官网dh-virtualenv:构建并将 virtualenv 虚拟环境作为一个 Debian
  • 如何从IntelliJ IDEA中移出自动完成的括号(不使用箭头键)?(How to move out of auto-completed brackets in IntelliJ IDEA (without using the arrow keys)?)
    问题 我最近从Eclipse切换到IntelliJ IDEA,发现自己想知道如何将光标从一对自动完成的括号中移出。 在Eclipse中输入完括号后,按Tab键使我退出括号。 在不使用箭头键的情况下如何做同样的事情? 非常感谢您的帮助! 回答1 IDEA尚无此功能。 最接近的等效项是“ Complete Current Statement编辑器操作( Ctrl + Shift + Enter )。 更新 此功能的初始实现在2018.2 EAP版本中可用-按Tab跳出。 它的工作方式更像是在MS Visual Studio中-无需视觉指示制表符“退出”位置。 目前,它应该可以在Java,SQL,Python和其他文件中运行。 其他语言可能需要一些时间才能赶上-需要更改某些特定于语言的代码。 该功能默认情况下处于禁用状态,您可以在 设置->编辑器->常规->智能键->用制表符跳到右括号/引号之外 0 回答2 在IDEA 12.1.4中, Ctrl + Shift + Enter似乎不适用于我,但是我发现与我想要的功能最接近的功能是Shift + Enter 。 这将完成该行,在当前行下方创建一个新行,然后将光标移至该行。 回答3 您可以通过按结束符号来执行此操作,否则该按钮将被按下,但是会自动完成。 例如,如果您刚刚在下面输入了f,则可以按shift和0 (或右括号)
  • 如何使用Apple Map Kit来实现地址自动完成功能(How to implement auto-complete for address using Apple Map Kit)
    问题 我想自动填写用户的地址,就像该链接中google api提供的地址一样: https://developers.google.com/maps/documentation/javascript/places-autocomplete?hl=zh-CN 如何使用Apple Map Kit实施相同的功能? 我尝试使用地理编码器,例如,我编写了此代码: @IBAction func SubmitGeoCode(sender: AnyObject) { let address = "1 Mart" let coder = CLGeocoder() coder.geocodeAddressString(address) { (placemarks, error) -> Void in for placemark in placemarks! { let lines = placemark.addressDictionary?["FormattedAddressLines"] as? [String] for addressline in lines! { print(addressline) } } } } 但是结果非常令人失望。 任何可用于实现此类功能的Apple API,还是我应该使用Google API? 谢谢 回答1 更新-我在这里使用Swift 3创建了一个简单的示例项目
  • 如何在Visual Studio中关闭方括号/引号自动完成(How to turn off brackets/quotes auto-completion in Visual Studio)
    问题 如标题中所述:如何在MSVS中关闭方括号/引号/大括号自动补全功能? 我主要对C#和XAML感兴趣,但是其他文本编辑器也将很不错。 编辑:当前我正在使用具有这些扩展名的MSVS 11: AnkhSVN 并发可视化器 PrePretive Analytics聚合器可视化器 MSVS PerfWatson VsGraphicsDebuggerPkg Web工具扩展 它们中的大多数必须已经预先安装了msvs安装,因为我不记得自己安装它们了;) EDIT2 :我在此版本中使用msvs:版本11.0.50323.1 QRELB 编辑3 : 我发现当前可用的msvs11中不会发生此问题。 回答1 如果有人在VS 2013中遇到此问题,现在可以进行设置。 我只是重新设置了VS设置,它又开始重新完成我的牙套。 对我而言,这不是生产力动力工具。 您可以在这里打开/关闭它: 回答2 如果有人偶然使用Resharper,则可能还需要在 (Resharper Menu, Options) - Environment -> Editor -> Editor Behavior 和 (Resharper Menu, Options) - Environment -> Intellisense -> Completion Behavior 根据您的个人喜好,以及其他人提到的内置Visual Studio设置
  • 【杂谈】FPGA之路——Verilog与编辑器的那些事儿
    目录 前言「 Verilog与Notepad++ 」「 Verilog与Sublime Text3」「 Verilog与VS Code」「 Verilog与Vim」「 重拾旧爱Notepad++」「 打造专属的编辑器」「 历经磨难“终得利器」 前言 Verilog HDL,硬件描述语言的一种,以文本形式描述数字系统硬件的结构和行为的语言[1]。Verilog HDL和VHDL是世界上最流行的两种硬件描述语言。在硬件描述语言中是很流行,但在所有编程语言中,其长期在100名左右徘徊,在TIOBE 2019年2月的排行榜中甚至跌出了前100名,足见其有多小众。 「 Verilog与Notepad++ 」 17年大学毕业后,从事FPGA开发相关工作,进入公司后,大家都用Notepad++,于是我也顺理成章的用上了Notepad++。Notepad++特别适合于Verilog的代码编写工作,因为Verilog不像其他编程语言,需要频繁的编译与调试,而且,一般Verilog的代码量不是特别大。前三个月,我用得很爽,但慢慢地,问题就来了。Notepad++除了支持Verilog语法高亮,除此之外只有基本的编辑功能。还是那句老话,磨刀不误砍柴工。不满足于现状的我,还是在因特内特上“疯狂”的寻找Notepad++与Verilog相关的插件,最终的结果不出意料的一无所获。 在这里,我仔细思考了一下
  • vim打造最强systemverilog编辑器
    本文介绍如何使用 vim 搭建 systemverilog 编辑环境。功能包括自动补全、语法高亮、语法检查、格式化等。 自动补全与语法检查 自动补全功能使用 lsp。本文选用 svls 作为 systemverilog 的语言服务器。 svls 使用 rust 语言编写,需要 rust 语言环境,使用 rust 包管理器 cargo 安装。或者可以从 snap 商店下载。 选择一款管理调用 lsp 的 vim 插件。本文选用 coc.nvim。在 coc.nvim 的配置文件中添加以下内容。 "languageserver": { "svls": { "command": "svls", "filetypes": ["systemverilog"] } } 注意,filetypes不一定正确。可以新建一个.sv 文件,查看文件类型。比如,在 neovim5 中,文件类型为verilog_systemverilog。 选用其他插件的可以在svls github 主页找到相应配置。 svls 的配置文件为.svls.toml,该文件放在项目的根目录。配置文件的编写方式非常简单。 [verilog] include_paths = ["src/header"] [option] linter = true 将以上include_paths的值修改为要编写的.sv 文件所在目录即可。 至此
  • 排名前三的Python IDE你选择哪个?我选PyCharm
    福利发送:Python开发微信机器人源码下载 世界上最好的 Python 编辑器或 IDE 是什么?炫酷的界面、流畅的体验,我们投 PyCharm 一票,那么你呢?编辑Python程序,您有许多选项。有些人仍然喜欢一个基本的文本编辑器,如Emacs,VIM或Gedit,所有这些都可以通过语法高亮和自动填充等功能进行扩展。但是,大量使用复杂代码库的大型项目的大量用户更喜欢将文本编辑器和终端组合的集成开发环境(IDE)。高级文本编辑器和超薄IDE之间的界限并不总是很清楚,我们将会将其留给您,以确定您的开发需求所需的哪些功能。 本文将为大家介绍3款主流的Python IDE,看它们是如何堆叠的。所有这三个都是跨平台的,可以在您选择的操作系统上使用。 PyCharm Pycharm是一种商业产品,但制造商还提供了一个根据Apache 2.0许可证免费开源的社区版本。 用正版,更放心!在线订购更便捷,PyCharm正版授权超低折扣,点击查看详情>> PyCharm几乎可以在IDE中提供一切可能希望的功能:集成单元测试,代码检测,集成版本控制,代码重构工具,各种工具导航工具,以及您期望的突出显示和自动完成功能IDE。 Eclipse与PyDev 很难在开源集成开发环境中编写任何内容,而不需要覆盖Eclipse,它拥有庞大的开发者社区和无数的插件,可让您自定义它,以满足您几乎可以想像的任何需求
  • Javascript,SublimeCodeIntel和提示代码智能自动完成(Javascript, SublimeCodeIntel and hinting Code Intelligence auto-completion)
    问题 是否有任何技巧或教程可用于使用Sublime Text 2和SublimeCodeIntel设置Javascript自动完成功能? 代码英特尔自动完成(包装函数内部的模块等)的局限性是什么? Javascript命名空间树是如何构建的,当无法正确猜测时,您可以为代码英特尔提供手动提示(例如,在注释中提供某种@class my.module.Foobar提示) 问题在于SublimeCodeIntel本身并未描述该过程,而Code Intelligence的原始作者则假定您将其与Komodo IDE一起使用(在我所听到的情况下,它可以正常工作) 另外这里没有答案的论坛主题 回答1 我看了SublimeCodeIntel(SCI)源代码,我的理解是lang_javascript.py描述了SCI的功能。 该文件的一个简单grep表明它依赖于自己的实现,并且不使用外部JavaScript词法分析器。 它尝试检查JSDoc到某个点,但是对我来说,实现看起来很特别。 JavaScript lexer似乎没有任何测试,因此很难确切知道它可以做什么,但是有日志记录命令,因此您可以启用它们并进行操作。 就我个人而言,我在SCI方面的经验很差(这对我来说很慢,不够准确),所以我会尝试使用更强大的功能-由于问题已经有两年了,它现在已经很老了。 这不是您问题的直接答案,它只是一种分析
  • 我如何知道是否单击了自动完成的装饰JComboBox的项目?(How do I know if an item of an auto-complete decorated JComboBox is mouse clicked?)
    问题 我正在为JComboBox使用SwingX AutoCompleteDecorator 。 自动完成功能可以完美运作... 但是我很难确定最终用户的选择时刻; 很少保留我的数据。 让我尝试解释一下:组合框为每个选择都触发一个“ comboBoxChanged” ActionEvent 。 当用户键入字符并且组合框自动匹配并选择项目时,我必须忽略这些事件。 如果用户按下返回键,则会生成“ comboBoxEdited” ActionEvent ,并且我可以保存选择的值。 伟大的 ;-) 如果使用鼠标打开JComboBox -PopUp并选择一个项目,则唯一触发的事件是“ comboBoxChanged” ActionEvent (例如在自动匹配或使用光标键选择一个项目时)。 鼠标单击的事件以某种方式被消耗了!! 这就是为什么我无法确定最终的鼠标选择的原因。 我该如何解决? 在此SSCCE中记录了我无法侦听mouseClicked-Event的尝试: import java.awt.Component; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseEvent; import java.awt.event
  • 工欲善其事必先利其器:用什么写Python?
    通常来说,每个程序员都有自己趁手的兵器:代码编辑器。你要是让他换个开发环境,恐怕开发效率至少下降三成。然而,每个人对编辑器的喜好各不相同,甚至引发出诸如“神的编辑器”与“编辑器之神”这种信仰之争。但也正由此可见,个性化的编辑器对于一个程序员的重要性。对编程新手来说,开发环境的选择常常成为入门后的第一道坎。因为捣鼓了半天没能成功运行代码而被迫从入门到放弃的情景并不少见。初上手时选择的编辑器是否易用也会直接影响你的学习热情。今天就来讲讲我对 Python 编辑器的经验。我们用来写 Python 的工具有两类:一种是被称为 IDE 的集成开发环境,它们为开发而生。如 IDLE、PyCharm、Spyder 等。另一种更像是文本编辑器,只不过比较强大,可以支持编写和运行代码。如 SublimeText、Emacs、Vim 等。在此我主要介绍下我个人平常用的几款。1. IDLE讲真,再怎么降低标准,IDLE 恐怕也算不上一个“好”的编辑器。不论是自动补全、语法提示,还是项目文件管理,甚至是高亮提示,它要么不支持,要么支持得很勉强。“用户体验”基本没有,更要命的是,经常在某些系统或某些版本下无法运行或无法输入。但没办法,人是亲儿子啊!安装完 Python 什么配置都不用做(甚至不用理会环境变量),就可以用它来编写和运行代码了。对一个没什么计算机基础的新人来说,还要啥自行车要啥手表呢
  • Emacs或Vim vs Eclipse的效率如何? [关闭](What are the efficiencies afforded by Emacs or Vim vs Eclipse? [closed])
    问题 从目前的情况来看,这个问题不适合我们的问答形式。 我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或进一步的讨论。 如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 我大约5年前开始编写代码。 我是通过Java和Eclipse进行介绍的,它们在编程社区中都有相当大的污名。 我目前在公司实习的很多人都喜欢emacs或vim。 我看不到基本的文本编辑器比一般的IDE更快或更容易的方法,尽管我很欣赏像命令行这样的构建工作,但这些事情往往更快。 这是“老男孩”俱乐部的事,还是这样编写项目的效率更高? 您可以提供一些用例进行演示吗? 如果我提倡Eclipse,我会说重构和自动完成是非常方便的工具。 加夫 回答1 我开始使用像Eclipse这样的IDE,但是大约2年前切换到了Vim。 您可能要使用文本模式编辑器的原因: 它几乎可以用作任何语言的IDE(您只需学习一次,然后将其用于所有用途) 它可以完成所有自动完成,重构和许多更复杂的操作等奇特的事情,您可以通过添加宏或插件来扩展它们它几乎可以在任何地方工作(并且可以通过SSH shell使用) 您不需要GB的ram即可运行它 如果您真的坚持不懈,您会发现在像这样的编辑器中工作最终会更快,并且实际上已经根深蒂固,成为一种“肌肉记忆”。
  • 苹果Mac强大的代码编辑器:Nova
    Nova 是一款强大的文本代码编辑器。Nova 打开文件速度非常快,并且已内置对 CoffeeScript、CSS、Diff、ERB、Haml、HTML、INI、JavaScript、JSON、JSX、Less、Lua、Markdown、Perl、PHP、Python、Ruby、Sass、SCSS、Smarty、SQL、TSX、TypeScript、XML、YAML、VUE、React 等编程语言的支持。Nova 具有非常强大的 API 和内置的扩展浏览器,扩展市场有丰富的扩展可以安装,扩展是用JavaScript编写的,因此任何人都可以编写它们。Nova包含内置扩展模板,可用于快速开发。还有命令面板、自定义布局、自定义主题、智能全项目索引、Git源代码版本控制(Clone、初始化仓库、Fetch、pull、push、Stage、unstage、Commit)、内置静态Web服务器,可以通过FTP,SFTP,WebDAV和云进行远程发布等功能。文本编辑器Nova具有您想要的所有功能:智能自动完成功能,多个光标,Minimap,编辑器过度滚动,标签对和括号以及更多方式。多种主题可以使Nova看起来像您想要的样子,同时仍然感觉像Mac。光明,黑暗。另外,主题类似于CSS,并且易于编写。当Mac从亮模式切换到暗模式时,Nova甚至可以自动更改主题
  • 将IDE与Rails一起使用会妨碍我吗?(Will using an IDE with Rails hinder me?)
    问题 我是Ruby on Rails的新手,到目前为止,学习它很有趣。 来自.NET世界,这是一个相当大的转变,因为我的IDE(Visual Studio 2008)可以为我处理所有事情,而在Rails中,所有事情都是通过多个应用程序(终端,TextMate等)完成的。 我已经开始仔细研究RubyMine作为Rails开发的IDE,并且作为IDEA和ReSharper的忠实拥护者,我自然喜欢RubyMine。 它具有代码补全功能,对RSpec的内置支持,SVN集成等。 但是,由于IDE处理了很多“ Rails经验”,所以我想知道是否应该坚持使用TextMate + Terminal方法。 像RubyMine这样的Ruby / Rails IDE会阻碍我吗? 回答1 在您真正了解Ruby on Rails之前,我将使用基础知识开始(终端和简单的文本编辑器)。 然后,一旦掌握了该框架的基础知识,便可以使用IDE。 在我看来,如果您想学习使用终端和编辑器,但是如果想提高工作效率,请使用IDE。 在家里,我正在使用基本设置,因为我正在学习Ruby on Rails。 但是,在工作中(我是Java开发人员),我使用IDE。 使用IDE使我不必担心繁琐的任务,而只担心编程。 拥有自动完成,集成的svn和集成的调试工具等工具可以提高我的生产率。 [edit]另外,我认为特定的IDE无关紧要。
  • 排名前三的python 开源 IDE
    Python无处不在 ,似乎它支持从主要网站到桌面实用程序到企业软件的所有功能。 Python已经被用来编写流行的软件项目,如dnf / yum,OpenStack,OpenShot,Blender,Calibre,甚至是原始的BitTorrent客户端。 它也恰好是我最喜欢的编程语言之一。 就个人而言,Python多年来一直是我从大学课程到小脚本的一切课程,帮助我自动执行重复的任务。 它是少数几种语言之一,初学者很容易就可以开始,而初学者毕业于现实世界的项目时却非常强大。 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。 很多已经做案例的人,却不知道如何去学习更加高深的知识。 那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码! QQ群:701698587 编辑Python程序,您有许多选项。有些人仍然喜欢一个基本的文本编辑器,如Emacs,VIM或Gedit,所有这些都可以通过语法高亮和自动填充等功能进行扩展。但是,大量使用复杂代码库的大型项目的大量用户更喜欢将文本编辑器和终端组合的集成开发环境(IDE)。高级文本编辑器和超薄IDE之间的界限并不总是很清楚,我们将会将其留给您,以确定您的开发需求所需的哪些功能。 我们来看看Python开发人员可用的一些最受欢迎的选项,看看它们是如何堆叠的。所有这三个都是跨平台的
  • 如何在JTable的单元格中实现自动完成功能?(How to implement auto complete functionality in a cell in JTable?)
    问题 我的JTable具有一个实现为DefaultCellEditor(JComboBox)类的实例的单元格编辑器。 我已经尝试了几种不同的方法(向Swing组合框添加自动完成支持),但仍然无法正常工作。 1: // JComboBox combo = new JComboBox(new Object[] { "Ester", "Jordi", "Jordina", "Jorge", "Sergi" }); AutoCompleteDecorator.decorate(combo); DefaultCellEditor cellEditor = new DefaultCellEditor(combo); TableColumn column = myTable.getColumnModel().getColumn(2); column.setCellEditor(cellEditor); // 2: // Object[] elements = new Object[] { "Ester", "Jordi", "Jordina", "Jorge", "Sergi" }; JComboBox c = new JComboBox(elements); c.setEditable(true); AutoCompleteSupport support =