小编Mat*_* H.的帖子

插入Vim函数参数和shell命令

我写了一个可以重新加载Safari的.applescript文件.我试图将它的执行挂钩到vim的BufWritePost事件中(因此Safari自动重载文件保存).

我把它放在我的.vimrc中:

function! SaveAndReloadSafari(delay) 
   " THIS IS WHERE MY PROBLEM IS>>>>>>>>>>>>>>> 
   !osascript ~/MySrc/applescript/reloadSafari.APPLESCRIPT a:delay
endfunction

if !exists("b:my_autocommands_loaded")
  let b:matts_autocommands_loaded = 1 

  au BufWritePost *.html,*\.css,*.js call SaveAndReloadSafari(0)
  au BufWritePost *.scss call SaveAndReloadSafari(2)
endif
Run Code Online (Sandbox Code Playgroud)

如您所见,我想在保存.scss文件后添加2秒延迟(以允许我的SCSS文件自动编译为CSS)

我已经确认缺少的唯一一个难题是我使用shell命令插入a:delay的语法.(执行没有delay参数的命令可以正常工作).

我的语法有什么问题?

vim shell

3
推荐指数
1
解决办法
470
查看次数

为什么我不需要在此代码中使用CFRetain()ABAddressBookGetPersonWithRecordID()的结果

我正在尝试使用地址簿,但我对内存管理的理解充其量也是如此.

我的项目使用的是自动引用计数(ARC),但据我所知,ARC只管理Objective-C中的保留/释放.

我理解我的第一个函数调用:ABAddressBookCreate()返回一个我"拥有"的ABAddressBookRef,因为我是从Create名字中的方法获取的.我CFRelease当我是受够了.

我不明白的是ABRecordRef在这个方法的过程中是如何保持活着的.我不应该CFRetainCFRelease它一起吗?如果我没有保留/释放,我在同一个类中有另一个几乎相同的方法崩溃了ABAddressBookRef.

    ABAddressBookRef iPhoneAddressBook = ABAddressBookCreate();    
    ABRecordRef record = ABAddressBookGetPersonWithRecordID(iPhoneAddressBook, self.addressBookRecordID);

    NSString *firstName = (__bridge_transfer NSString*)ABRecordCopyValue(record, kABPersonFirstNameProperty);
    NSString *lastName = (__bridge_transfer NSString*)ABRecordCopyValue(record, kABPersonLastNameProperty);
    NSString *fullName = [NSString stringWithFormat:@"%@ %@", firstName, lastName];

    ABMultiValueRef phoneRef = ABRecordCopyValue(record, kABPersonPhoneProperty);

    // Set up an NSArray and copy the values in.
    NSArray *phoneNumberArray = (__bridge_transfer id)ABMultiValueCopyArrayOfAllValues(phoneRef);


    CFRelease(iPhoneAddressBook);

    // Finally, do stuff with contact information in Obj-C land..
Run Code Online (Sandbox Code Playgroud)

退出的问题:有我创建通过不调用泄漏CFRelease …

memory-management objective-c ios automatic-ref-counting

3
推荐指数
1
解决办法
2866
查看次数

使用Ruby文件maniuplation

我正在使用Ruby为我的团队编写命令行开发实用程序.

我正在尝试检查文件系统上的HTML文档,并<script>在之前添加新标记</head>

就像是:

<html>
  <head>
    <script src="...foo.js"></script>
    <script src="...bar.js"></script>
    <!-- I WANT TO INSERT NEW TEXT HERE -->
  </head>
  <body>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我正在考虑开始IO.readlines(file_name),将每一行与正则表达式进行比较,然后在我的新标记之前插入</head>.然后,将整个数组合并回该文件的新版本.

这听起来过于复杂.谁有更好的方法?

对于奖励积分,拥有合适的缩进水平会很棒.

ruby regex parsing

2
推荐指数
1
解决办法
95
查看次数

jQuery Slideshow在IE8中不起作用,在Safari/Firefox中运行良好

我即将到来的婚礼网站(www.hilaryandmatthew.com)有一个非常漂亮的JQuery幻灯片(由www.dynamicdrive.com提供)

我希望我能尽快得到一些帮助,在发出邀请函之前,我真的希望我的网站看起来很清晰.我对jQuery一无所知.因此,我遇到了复制和粘贴开源代码的陷阱.

我尝试在IE8中加载页面时收到此错误:


消息:'imagearray [...].0'为空或不是对象行:39字符:3代码:0 URI:http://www.hilaryandmatthew.com/includes/slideshow/fadeslideshow.js


这是我的图像数组的代码,它传递给函数'fadeSlideShow(settingarg)'

<script type="text/javascript">

var mygallery=new fadeSlideShow({
    wrapperid: "fadeshow1", //ID of blank DIV on page to house Slideshow
    dimensions: [267, 200], //width/height of gallery in pixels. Should reflect dimensions of largest image
    imagearray: [
                ["images/ss1.jpg", "", "", ""],
                ["images/ss2.jpg", "", "", ""],
                ["images/ss3.jpg", "", "", ""],
                ["images/ss4.jpg", "", "", ""],
                ["images/ss5.jpg", "", "", ""],
                ["images/ss6.jpg", "", "", ""],
                ["images/ss7.jpg", "", "", ""],
                ["images/ss9.jpg", "", "", ""],
                ["images/ss10.jpg", "", "", ""],
                ["images/ss11.jpg", "", "", …
Run Code Online (Sandbox Code Playgroud)

javascript jquery internet-explorer slideshow

1
推荐指数
1
解决办法
4192
查看次数

.NET将嵌入式文件资源的副本复制到本地驱动器

我是使用.NET中的文件的新手

我正在使用3.5 Framework在VB.NET中创建一个WPF应用程序.(如果你在C#中提供一个例子,那就完全没问题了.)

在我的项目中,我有一个MS Access数据库的模板.我希望的行为是,当用户单击文件 - >新建时,他们可以创建此模板的新副本,为其指定文件名,并将其保存到本地目录.

数据库已经有表和一些与我的应用程序接口所需的起始数据(一个用户友好的数据编辑器)

我认为这种方法是将这个"template.accdb"文件作为项目中的资源包含在内,并在运行时以某种方式将其写入文件?

任何指导都将非常非常感谢.

谢谢!

.net vb.net wpf file-io ms-access

1
推荐指数
1
解决办法
4875
查看次数

CoreAnimation — 在动画开始之前,层会闪烁到最终值吗?

我正在尝试对图层的背景颜色从红色到蓝色进行简单的 CABasicAnimation。

添加动画并设置模型层的最终值后,动画闪烁为蓝色,然后再次变为红色,动画变为蓝色。

我的代码是:

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)

    // Create red layer and add to view
    let redLayer = CALayer()
    redLayer.backgroundColor = UIColor.red.cgColor
    redLayer.position = view.center
    redLayer.bounds.size = CGSize(width: 100, height: 100)
    view.layer.addSublayer(redLayer)

    DispatchQueue.main.asyncAfter(deadline: .now() + .seconds(1)) {

        // After a 1 second delay, animate from red to blue.

        let anim = CABasicAnimation(keyPath: "backgroundColor")
        anim.duration = 3
        anim.fromValue = redLayer.backgroundColor
        anim.toValue = UIColor.blue.cgColor
        redLayer.add(anim, forKey: "")

        // Set background color to final value
        redLayer.backgroundColor = UIColor.blue.cgColor
    } …
Run Code Online (Sandbox Code Playgroud)

core-animation calayer cabasicanimation ios

1
推荐指数
1
解决办法
160
查看次数

Objective-C新手 - >快速提问

所以我试图从VB.NET到Objective-C的可怕飞跃.

我唯一的卷发体验是一个小小的ActionScript 3 ......我很难掌握*角色的使用.

问题1:

我正在使用的教程将这两行紧挨着......

IBOutlet UIPickerView *pickerView;
NSArray* myArray;
Run Code Online (Sandbox Code Playgroud)

我的理解是*表示基本上是一种引用类型.为什么它在第一行的变量名前面,而在第二行的类名呢?

问题二,关于类声明:

@implementation {
 Why is some code here
}

and other code here?
@end
Run Code Online (Sandbox Code Playgroud)

iphone xcode objective-c interface-builder

0
推荐指数
1
解决办法
127
查看次数