正如标题所说,如何改变emacs前向词功能的行为?例如,假设[]是光标.然后:
my $abs_target_path[]= abs_path($target);
<M-f>
my $abs_target_path = abs[_]path($target);
Run Code Online (Sandbox Code Playgroud)
我知道我可以使用Mf Mb,但据我所知,这不应该是必要的,我想改变它.特别是,我想要两件事:
因此,在上面的例子中,第1项将使光标在击中Mf后移动到'a'(以及它左边的点).第2项允许我将下划线和符号定义为单词字符.
我正在使用Perl开发一个带有一些C的Web应用程序,这对于一些重载数字运算来说是必要的.到目前为止我遇到的主要问题是试图决定是否应该使用mod-perl,mod-fastcgi或两者来运行我的脚本,因为我很难分析每个mod的优点和缺点.
任何人都可以发布摘要或提供一个链接,我可以找到一些比较信息,也许一些建议与示例?
两个问题:
LaTeX是否允许一个(重新)定义命令\newenvironment?我试过使用\renewcommand,\newcommand并\def在之前的声明但无济于事.
如何\item在创建新的列表环境时重新定义?
我从头开始创建了一种新类型的列表环境,\newenvironment同时使用另一个令牌而不是\item每个令牌,但我真的希望通过使用\list和重新定义来保持一致\item.
正如标题所说,我不清楚何时会调用这样的子程序.从perldoc的require页面可以写出:
push @INC, \&my_sub;
sub my_sub {
my ($coderef, $filename) = @_; # $coderef is \&my_sub
...
}
Run Code Online (Sandbox Code Playgroud)
但这究竟在哪里?必需的包或要求的脚本(或包)?我已经尝试了一些哨兵print陈述,但两种方法都没有这么清楚,有些东西我没有得到.
我正在尝试将Vim设置为用户VS(express)C编译器cl.exe.添加
set makrprg='c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\cl.exe'
Run Code Online (Sandbox Code Playgroud)
(我试着逃跑\\,\\\,\\\\只是要确定)我的_vimrc文件,并调用:make %返回以下内容:
:! myfile.c >C:\Users\gvkv\AppData\Local\Temp\VIe7BF5.tmp 2>&1
Run Code Online (Sandbox Code Playgroud)
和负载myfile.c到VS的IDE!即使cl.exe需要其环境:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat
Run Code Online (Sandbox Code Playgroud)
这仍然很奇怪,我不知道如何继续.
有没有一种简单的方法可以使用CSS在父块容器中分发内联元素?将边距设置为自动不起作用,因为内联元素之间的边距设置为0并且我不想因为内容是动态的而导致百分比混乱.
特别是,我在段落(p)中有几个锚元素(a),它跨越80%的容器,我正在寻找一种简单的方法在段落内均匀分布它们.
编辑(@cletus):段落不会换行,锚点是段落中唯一的东西.通过均匀分布,我的意思是左(右)边和第一(最后)元素之间的空间和元素本身是等距的.
我正在尝试在我的FreeBSD 7.1(BSD)服务器上编译Perl 5.10但是当我运行Configure脚本并回答问题时,我收到以下错误:
...POSTIX threads should be supported by FreeBSD 7.1 ... but your system is missing the shared libc_r.
Run Code Online (Sandbox Code Playgroud)
谷歌寻找答案出现了安装gethostnamadr.c这是好的,除了两件事:
我发现传递配置和其他一次读取或计算的数据非常方便,但是在整个程序中使用Perl的use机制会多次使用.我是通过将哈希导出到调用者的命名空间来实现的.例如:
package Myconfiguration;
my %config;
sub import {
my $callpkg = caller(0);
my $expsym = $_[1];
configure() unless %config;
*{"$callpkg\::$expsym"} = \%config;
}
Run Code Online (Sandbox Code Playgroud)
然后在其他模块中:
use MyConfiguration (loc_config_sym);
if ( $loc_config_sym{paramater} ) {
# ... do stuff ...
}
Run Code Online (Sandbox Code Playgroud)
但是,我不确定这是最佳做法.添加一个返回带有数据的散列引用的方法是否更好?别的什么?
我有两个类:基类,Foo :: Base和派生类Foo::Base::Sub.我想Foo::Base::Sub在祝福之前对构造函数的参数 - 哈希 - 做一些类型和数据检查.我试过覆盖Foo::Base->new的构造函数,进行检查然后调用Foo::Base->new(因为代码完全相同):
package Foo::Base::Sub;
sub new {
...check argument's type and data...
Foo::Base->new(%my_hash)
}
Run Code Online (Sandbox Code Playgroud)
问题是通过调用Foo::Base的构造函数,哈希现在将被祝福为Foo :: Base对象而不是Foo :: Base :: Sub对象.显而易见的解决方案只是将代码Foo::Base::new放入,Foo::Base::Sub::new但后来我重复代码.另一件事是Foo :: Base不是我的 - 所以我想避免在模块加载或不必要地分叉之后修改它.
在我看来,这个问题必须在此之前出现,因此必须有一个规范的解决方案.而且,它确实涉及类型强制,这通常不是Perl的问题.
那么有一个简单的修改,还是我错误的方式?
perl ×6
compilation ×2
apache ×1
c ×1
constructor ×1
css ×1
emacs ×1
emacs23 ×1
export ×1
freebsd ×1
latex ×1
mod-fastcgi ×1
mod-perl ×1
polymorphism ×1
tex ×1
types ×1
variables ×1
vim ×1
windows-7 ×1