我多年来一直在“VIM 模式”下使用 VS Code,没有出现任何问题。我现在是 v1.46。我今天启动它,立即无法输入,并且其他键(例如转义键)无法注册。在左下角,我会间歇性地看到以下内容:
我进入扩展并禁用了 Vim 模拟器,现在它允许我正常编辑文件......当然,没有 vim 功能。
我看到一个通过 GitHub 提交的错误,看起来可能已经解决了这个问题,但由于缺乏提供的信息而被关闭。
有什么想法可能会发生什么或者我如何才能恢复我的 vim 功能吗?
这里有更多信息:
command 'extension.vim_backspace' not found- 这是 github 上的已关闭问题 - https://github.com/microsoft/vscode/issues/22365对于该特定消息,但我也遇到了转义键和其他键的错误esc通常首先停止工作)我有一个网页,我在其中使用应用于页面的HTML元素之一的SVG剪辑路径.
SVG元素:
<svg height="0" width="0">
<defs>
<clipPath id="clip">
<path d="M150 0 L75 200 L225 200 Z" />
</clipPath>
</defs>
</svg>
Run Code Online (Sandbox Code Playgroud)
应用剪切路径的HTML元素
<div id="clipMe"> </div>
定义剪辑的CSS
#clipMe {
clip-path: url(#clip);
-webkit-clip-path: url(#clip);
width: 200px;
height: 200px;
background-color: red;
}
Run Code Online (Sandbox Code Playgroud)
在同一页面上,我有各种各样的元素,其中一些相对定位:
<div style="position: relative">
<strong>My parent is relative</strong>
</div>
Run Code Online (Sandbox Code Playgroud)
仅在Safari(8.0.4)中,只要从#clipMediv到clipPath(在SVG元素内)的链接完好无损,就不会显示这些相对定位的元素.
最新版本的FF和Chrome按预期显示.
将position:属性更改为除relative之外的任何内容都会按预期显示所有内容
禁用剪切路径(通过一起删除SVG元素或clip-path:从CSS中删除属性)也会按预期显示所有内容.
同样,这只是Safari.我花了一段时间将它隔离到关于SVG剪切路径,position: relative所以我猜测可能有其他类似结果的情况.
有没有人遇到这个或有任何建议让这些相对定位的s显示?
编辑
这可能是一个Mac的东西.虽然它在OSX中的Chrome和Firefox中显示为预期,但它不会在iOS上的任何浏览器中显示相对定位的DIV.
有任何想法吗?
我的一个界面元素是使用HTML5 <canvas> 元素和相关的JavaScript API 呈现的.此元素在整个应用程序的同一屏幕和多个屏幕上的多个位置使用.什么是在所需的任何地方显示它的最有效方法?
我的第一个想法是绘制一个主画布,然后我将其克隆并插入页面中所需的位置.主画布可能类似于:
var master = $('<canvas>').attr({
width: 100,
height: 100
}),
c = master[0],
ctx = c.getContext("2d");
ctx.fillStyle = "#FF0000";
ctx.fillRect(0, 0, 150, 75);
Run Code Online (Sandbox Code Playgroud)
假设我想在这些div容器中复制画布:
<div class="square-container" id="square_header"></div>
...
<div class="square-container" id="square_dataTable"></div>
...
<div class="square-container" id="square_gallery"></div>
....
Run Code Online (Sandbox Code Playgroud)
当页面加载时,我将这样做以在每个容器中插入一个重复的canvas元素:
$(document).ready(function() {
$('.square-container').each(function() {
master.clone().appendTo($(this));
});
});
Run Code Online (Sandbox Code Playgroud)
在画布上呈现的内容将比本示例中使用的简单方块更复杂,但仍然只是一个静态图像.但是,有可能每页克隆数十个不同的图像数十次.
我想到的另一种方法是使用该toDataURL()方法创建一个图像,并将其设置为适当的图像源:
var master = $('<canvas>').attr({
width: 100,
height: 100
}),
c = master[0],
ctx = c.getContext("2d");
ctx.fillStyle = "#FF0000";
ctx.fillRect(0,0,150,75);
var square = c.toDataURL('image/png');
Run Code Online (Sandbox Code Playgroud)
我会在必要时添加图片标签:
<img …Run Code Online (Sandbox Code Playgroud) 我需要通过查询字符串传递一个值以显示在我的页面上。该值必须加密,因为它包含一些供查看页面的用户使用的 PII。并且为了让用户可读,它需要在显示时能够被解密。
我使用PHP和研究迄今已使我openssl_encrypt和openssl_decrypt这些2个代码资源一起:
我非常喜欢#1,因为iv它实际附加到返回的加密字符串的方式。这使我们不必将 an 存储iv为常量,并且能够在每次调用函数时生成一个新的。这似乎比使用相同的更安全对我key和iv每一次。真的吗?如果是这样,除了痛苦的显而易见的原因之外,我是否应该知道任何原因?. 我不喜欢的是,我认为将iv和key与一个字符/字符串(在这种情况下::)连接起来,可以在其他潜在的密码文本或iv成了问题。使用这种方法,在尝试加密 7000 多个电子邮件地址时,其中一半多一点的结果是这些奇怪的字符,???6CT?其中包括)在解码字符串中,从而破坏了它。
#2 很棒,因为它有效!!我还没有找到可以破坏它的字符串……尤其是在我的电子邮件列表中。但是如上所述,这需要。在iv和key 永远是相同的值,并存储在一个变量的地方。这似乎是一个很小的维护问题,但更多的是安全问题。
所以我做了更多的阅读/思考并想出了这个工作示例- 这是代码:
<?php
// generate key with base64_encode(openssl_random_pseudo_bytes(32);
// and save it in a constant.
define('ENCRYPT_KEY_1', 'CuH8WPfXzMj0xRWybHjssWJ+IhTDqL5w0OD9+zXFloA=');
function encrypt_decrypt($action, $string) {
$output = false;
$encrypt_method = "AES-256-CBC";
$key = …Run Code Online (Sandbox Code Playgroud) Code.gs除非我在新版本下部署为 webapp,否则我对文件所做的更改似乎无法识别。这是设计的行为还是我在其他地方做错了什么?
这是我的PHP数组:
$entries = array(
1420934400 => array(
'entry' => 'I think I liked it.',
'data' => 'some'
),
1452470400 => array(
'entry' => 'Turkey is much better. Tastes more like chicken.',
'data' => 'no calls'
));
Run Code Online (Sandbox Code Playgroud)
然后我转换为JSON
$entries = json_encode($entries);
Run Code Online (Sandbox Code Playgroud)
这会产生字符串:
{"1420934400":{"entry":"I think I liked it.","data":"some"},"1452470400":{"entry":"Turkey is much better. Tastes more like chicken.","data":"no calls"}}
...我相信它是有效的JSON.但是当我尝试使用JavaScript访问时:
<script>
var fetchedEntries = JSON.parse(<?php echo $entries ?>);
console.log('entries: %o', fetchedEntries);
</script>
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
SyntaxError:JSON.parse:JSON数据的第1行第2列的意外字符
谁能看到我哪里出错了?
javascript ×2
php ×2
canvas ×1
clip-path ×1
cloning ×1
css-position ×1
css3 ×1
encryption ×1
html ×1
html5 ×1
json ×1
pii ×1
safari ×1
security ×1
svg ×1
version ×1
vim-plugin ×1